继承PagerAdapter要重写4个方法
class TestPagerAp extends PagerAdapter {
List<View> viewList;
public TestPagerAp(List<View> list)
{
viewList=list;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager) container).removeView(viewList.get(position));
}
// @Override
// public void destroyItem(View container, int position, Object object) {
// ((ViewPager) container).removeView(viewList.get(position));
// }
@Override
public Object instantiateItem(View container, int position) {
((ViewPager) container).addView(viewList.get(position));
// TODO Auto-generated method stub
return viewList.get(position);
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
// TODO Auto-generated method stub
return arg0==arg1;
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return viewList.size();
}
}其中
<pre name="code" class="java">public Object instantiateItem(View container, int position) {
((ViewPager) container).addView(viewList.get(position));
// TODO Auto-generated method stub
return viewList.get(position);
}中return的是key,与view对应,也可以是个int值,只是为了简单,就直接返回这个view了
<pre name="code" class="java">isViewFromObject(View arg0, Object arg1)arg0是显示的view,arg1是对应view的key,因为之前返回的key就是view本身,所以判断arg0==arg1
继承FragmentPagerAdapter重写3个方法即可
class TestFgAp extends FragmentPagerAdapter {
ArrayList<Fragment> list;
public TestFgAp(FragmentManager fragmentManager,ArrayList<Fragment> fgList) {
super(fragmentManager);
list=fgList;
// TODO Auto-generated constructor stub
}
@Override
public Fragment getItem(int arg0) {
// TODO Auto-generated method stub
return list.get(arg0);
}
@Override
public int getCount() {
// TODO Auto-generated method stub
return list.size();
}
// @Override
// public void destroyItem(ViewGroup container, int position, Object object) {
// // TODO Auto-generated method stub
// ((ViewPager) container).removeView(list.get(position));
// }
}
testFgAdapter=new TestFgAp(getSupportFragmentManager(),fgList);中getSupportFragmentManager()是FragmentActivity的方法
本文详细介绍了PagerAdapter和FragmentPagerAdapter的使用方法,通过具体实例展示了如何重写必要的方法以实现页面适配器的功能。适用于Android应用开发者理解并掌握ViewPager组件的工作原理。
2982

被折叠的 条评论
为什么被折叠?



