viewpager的简单使用

来源:互联网 发布:怎么在淘宝店发布宝贝 编辑:程序博客网 时间:2024/04/26 19:42

如果Android sdk版本低于3.0,就要导入android.support.v4包,不低于3.0就不用了
在布局中要这样引用来使用

<android.support.v4.view.ViewPager        android:id="@+id/viewpager"        android:layout_width="fill_parent"        android:layout_height="fill_parent"        />


然后通过findviewbyid找到viewpager
 ViewPager viewpager = (ViewPager) findViewById(R.id.viewpager);
因为viewpager滑动需要页面显示,所以要新建布局页面,在activity中通过layoutinflate找到布局

        View page1 = getLayoutInflater().inflate(R.layout.page1, null);        View page2 = getLayoutInflater().inflate(R.layout.page2, null);        View page3 = getLayoutInflater().inflate(R.layout.page3, null);
然后定义一个list集合,把这几个布局添加进集合
List<View> list = new ArrayList<View>();        //加入集合        list.add(page1);        list.add(page2);        list.add(page3);
由于viewpager是通过适配器把布局添加的,这里定义一个类实现PagerAdapter,必须实现四个方法
 private class MyPagerAdapter extends PagerAdapter{    private List<View> list;    public MyPagerAdapter(List<View> list) {super();this.list = list;}/** * 页数 */@Overridepublic int getCount() {// TODO Auto-generated method stubreturn list.size();}/** * 判断当前要实现的页面是不是需要显示的页面 */@Overridepublic boolean isViewFromObject(View view, Object object) {// TODO Auto-generated method stubreturn view == object;}/** * 实例化页面 */@Overridepublic Object instantiateItem(ViewGroup container, int position) {//获取要显示的页View view = list.get(position);//放置在容器里面container.addView(view, position);return view;}    /** * 移除页面 */@Overridepublic void destroyItem(ViewGroup container, int position, Object object) {// TODO Auto-generated method stub//super.destroyItem(container, position, object);//这行代码要去掉container.removeViewAt(position);}    }}
最后设置适配器就可以了
viewpager.setAdapter(new MyPagerAdapter(list));

0 0