写一个简单的viewpager出现了下面这个报错信息。
提示我们需要重写 instantiateItem方法:
解决问题:adapter里边重写instantiateItem方法并改为如下所示。
public class PicCarouseVpAdapter extends PagerAdapter {
private List<View> pageList;
public PicCarouseVpAdapter(List<View> pageList) {
this.pageList = pageList;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
// 返回要展示的图片数量
return pageList.size();
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
// 刚开始用viewpager就直接写“return arg0 == arg1;”就好啦
return arg0 == arg1;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
container.addView(pageList.get(position));
//每次滑动的时候把视图添加到viewpager
return pageList.get(position);
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
// TODO Auto-generated method stub
// 将当前位置的View移除
container.removeView(pageList.get(position));
}
}