美文网首页
ViewPager基本用法

ViewPager基本用法

作者: CharlesCheng | 来源:发表于2017-11-01 16:05 被阅读0次

    1.1 大致意思

    布局管理器允许左右翻转带数据的页面,你想要显示的视图可以通过实现PagerAdapter来显示。这个类其实是在早期设计和开发的,它的API在后面的更新之中可能会被改变,当它们在新版本之中编译的时候可能还会改变源码。

    ViewPager经常用来连接Fragment,它很方便管理每个页面的生命周期,使用ViewPager管理Fragment是标准的适配器实现。最常用的实现一般有FragmentPagerAdapter和FragmentStatePagerAdapter。

    FragmentPagerAdapter和FragmentStatePagerAdapter是ViewPager和Fragment一起使用时才会用到,后面会详细介绍,这里就不介绍了。

    1.2 介绍总结

    ViewPager是v4包中的一个类。
    ViewPager继承自ViewGroup,其实是一个容器。
    ViewPager类似于ListView,也有自己的适配器,里面用来填充数据页面。
    ViewPager一般和Fragment一起使用,它更方面的管理页面中Fragment的生命周期。

    二、ViewPager的简单使用
    布局文件中申明控件
    由于ViewPager是一个类似ListView的容器,一般使用单标签

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

    代码中设置显示数据

    获取控件对象

    ViewPager viewPager = (ViewPager) findViewById(R.id.viewpager);
    

    自定义类继承PagerAdapter填充页面和数据

     class MyViewPagerAdapter extends PagerAdapter {
            @Override
            public int getCount() {//返回显示多少个页面
                return 5;
            }
            @Override
            public boolean isViewFromObject(View view, Object object) {//判读初始化返回的object是不是一个view对象
                return view == object;
            }
            @Override
            public Object instantiateItem(ViewGroup container, int position) {//初始化显示的条目对象
    //            创建视图
                TextView textView = new TextView(MainActivity.this);
                textView.setGravity(Gravity.CENTER);
                textView.setTextSize(20);
                textView.setText("页面"+position);
                //添加到ViewGroup容器中
                container.addView(textView);
                //返回填充的View
                return  textView;
            }
            @Override
            public void destroyItem(ViewGroup container, int position, Object object) {//销毁条目对象
                container.removeView((View) object);
            }
        }
    

    设置适配器
    viewPager.setAdapter(new MyAdapter());

    效果图


    Demo1效果图

    相关文章

      网友评论

          本文标题:ViewPager基本用法

          本文链接:https://www.haomeiwen.com/subject/kglgpxtx.html