ViewPager 的使用

来源:互联网 发布:最新淘宝黑车技术 编辑:程序博客网 时间:2024/06/10 06:36
ViewPager 的使用

   ViewPager 是谷歌提供给我们进行滑动切换页面的一个工具类,如果我们需要使用 ViewPager 的话,最少涉及到 2个类
   1. ViewPager
   2. PagerAdapter - ViewPager 的适配器,为 viewpager 提供内容

如:

-------------------------------------------------------------------------------------------
layout 布局:
       <android.support.v4.view.ViewPager
       android:layout_width="match_parent"
       android:layout_height="150dp"
       android:id="@+id/viewPager"
       />
-------------------------------------------------------------------------------------------
继承 PagerAdapter,实现以下方法:
    public class ImageAdapter extends PagerAdapter {
    ArrayList<ImageView> views;

//构造
    public ImageAdapter(ArrayList<ImageView> views) {
        this.views = views;
    }

//getCount需要返回一个int值,这个int值就是viewPage需要显示的页面个数
    @Override
    public int getCount() {
        return Integer.MAX_VALUE;
    }

//isViewFromObject(View, Object)view是我们某个位置的页面, Object instantiateItem 方法返回的。我们在这个方法需要判断这页面与Object对象
是否是同一个对象。
    @Override
    public boolean isViewFromObject(View view, Object object) {
     return  view == object;
    }

//销毁
    @Override
    public void destroyItem(ViewGroup container, int position, Object object) {
        int realPosition = position%views.size();
        ImageView view =  views.get(realPosition);
        container.removeView(view);

    }
//instantiateItem(ViewGroup container, int position)生成对应位置的页面, container 就是显示页面的容器,position就是对应的页面的序号。这个方法
//有一个返回值,返回值的类型是Objcet,这个Object 对象就是对应页面。
    @Override
    public Object instantiateItem(ViewGroup container, int position) {
        int realPosition = position%views.size();
        ImageView view =  views.get(realPosition);
        container.addView(view);
        return  view;
    }
}

然后在MainActivity中调用

----------------------------------------------------------------------------------------------------------------------------
0 0
原创粉丝点击