参考http://blog.csdn.net/harvic880925/article/details/38487149
1. 适配器
适配器的四大函数
(如果返回的是position,那么后面的函数isViewFromObject的写法和view是不一样的) instantiateItem.png
1.计算view的个数 getCount();返回view的个数
2.创建指定位置的页面视图,返回key值 instantiateItem()
3.移除一个给定位置的页面 destroyItem ()
4.判断instantiateItem(ViewGroup, int)函数所返回来的Key与一个页面视图是否是代表的同一个视图 isViewFromObject (View view, Object object)
PagerAdapter pagerAdapter = new PagerAdapter() {
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
//根据传来的key,找到view,判断与传来的参数View arg0是不是同一个视图
return arg0 == viewList.get((int)Integer.parseInt(arg1.toString()));
}
@Override
public int getCount() {
return viewList.size();
}
@Override
public void destroyItem(ViewGroup container, int position,
Object object) {
container.removeView(viewList.get(position));
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
container.addView(viewList.get(position));
//把当前新增视图的位置(position)作为Key传过去
return position;
}
};
viewPager.setAdapter(pagerAdapter);
网友评论