个人日志
2014.8.1 学习记录
今天把这两天在看的viewpager我记得的关键点记录一下:
关于怎么实现viewpager,大概是这样:
1. 首先在xml里布局一个viewpager,这里要注意一定要把包名写全,否则会ClassNotFount。
2. 接着在要显示的activity里实例化这个ViewPager以及PagerTabStrip,再通过LayoutInflater:LayoutInflater lf = getLayoutInflater().from(this);
通过lf的inflate方法将要显示的各个布局文件放进去并一一赋给想应的全局变量view1,view2,view3...再将view1,2,3...add进到viewList里面。
3. 然后新建一个PagerAdapter,这里重点是要重写里面的5个方法:
public boolean isViewFromObject(View arg0, Object arg1)
public int getCount()
public void destroyItem(ViewGroup container, int position,Object object)
public int getItemPosition(Object object)
public Object instantiateItem(ViewGroup container, int position)
然后将这个PagerAdapter 通过setAdapter给ViewPager ,程序就可以运行了。
4. 如果想通过ViewPager里的指示器显示每个页卡的标题,则可以通过这个方法:
首先在ViewPager里写入子标签PagerTabStrip,也就是说它在xml里的位置是在ViewPager里的,这里一不小心可能就会copy出错,运行不了程序。第二,在ViewPager显示的那个Activity里新建一个List<String>,add入要显示的每个标题。第三,在PagerAdapter里重写方法:
public CharSequence getPageTitle(int position)public CharSequence getPageTitle(int position)
那么标题就会显示出来了。具体可以参考我的ViewPager的demo:Lby_Viewpager_1
或者参考网址:http://blog.csdn.net/wangjinyu501/article/details/8169924/这篇介绍得很详细