我在drawable文件夹中有多个图像,但我只想根据在之前的ListView活动中单击的项目加载某些图像。所以我想学习如何延迟加载图像而不是硬编码到我的xml文件中。我是一个新手,并试图从ios开发背景教自己的android。提前感谢您的帮助。
私有类MyPagerAdapter扩展了PagerAdapter {
public int getCount(){
return 3;
}
public Object instantiateItem(View collection, int position){
LayoutInflater inflater = (LayoutInflater)collection.getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
ImageView iv1 = (ImageView) findViewById(R.id.imageView1);
ImageView iv2 = (ImageView) findViewById(R.id.imageView2);
ImageView iv3 = (ImageView) findViewById(R.id.imageView3);
int resId = 0;
switch(position){
case 0:
iv1.setImageResource(R.drawable.amersenna);
resId = R.layout.left;
break;
case 1:
iv2.setImageResource(R.drawable.amersenna);
resId = R.layout.middle;
break;
case 2:
iv3.setImageResource(R.drawable.amersenna);
resId = R.layout.right;
break;
}
View view = inflater.inflate(resId, null);
((ViewPager) collection).addView(view, 0);
return view;
}
@Override
public void destroyItem(View agr0, int agr1, Object agr2) {
((ViewPager) agr0).removeView((View)agr2);
}
@Override
public boolean isViewFromObject(View agr0, Object agr1){
return agr0 == ((View)agr1);
}
@Override
public Parcelable saveState(){
return null;
}
}
答案 0 :(得分:0)
您可以使用setTag(Object)
课程中的getTag()
和View
方法。将ArrayList对象添加到每个ImageView。因此,当单击特定的ImageView时,您可以使用'getTag()'获取附加的ArrayList对象。通过这种方式,您可以根据需要在单击特定列表项时加载不同的图像。