[英]How to use ArrayList in ViewPager?
我正在開發一個從sdcard獲取圖像並加載到viewpager的應用程序。 我在網格視圖中獲取圖像。我想在單擊圖像時打開具有相同圖像的viewPager。 如何將圖像加載到viewpager?
我有ArrayList,其中所有圖像都可以在網格中顯示。我可以在點擊圖像時打開viepager,但相應的圖像沒有打開。
這是我的適配器
public class GalleryAdapter extends BaseAdapter {
private Context ctx;
private int pos;
private LayoutInflater inflater;
private ImageView ivGallery;
ArrayList<Uri> mArrayUri;
public GalleryAdapter(Context ctx, ArrayList<Uri> mArrayUri) {
this.ctx = ctx;
this.mArrayUri = mArrayUri;
}
@Override
public int getCount() {
return mArrayUri.size();
}
@Override
public Object getItem(int position) {
return mArrayUri.get(position);
}
@Override
public long getItemId(int position) {
return 0;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
pos = position;
inflater = (LayoutInflater) ctx
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View itemView = inflater.inflate(R.layout.gv_item, parent, false);
ivGallery = (ImageView) itemView.findViewById(R.id.ivGallery);
ivGallery.setImageURI(mArrayUri.get(position));
return itemView;
}
}
public class ImagePageAdapter extends PagerAdapter {
private List<ImageView> images;
public ImagePageAdapter(List<ImageView> images) {
this.images = images;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
ImageView imageView = images.get(position);
container.addView(imageView);
return imageView;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView(images.get(position));
}
@Override
public int getCount() {
return images.size();
}
@Override
public boolean isViewFromObject(View view, Object o) {
return view == o;
}
}
您的視圖尋呼機索引未正確發生。 請關注此 -
http://codetheory.in/android-image-slideshow-using-viewpager-pageradapter/
您可以使用圖片網址來加載圖片,而不是可繪制的ID。 使用滑動等來加載圖像。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.