ViewPager的某些性质

默认缓存三个页面

 class ContentAdapter extends PagerAdapter {
        @Override
        public int getCount() {
            return mPagerList.size();
        }
        @Override
        public boolean isViewFromObject(View view, Object object) {
            return view == object;
        }
        @Override
        public Object instantiateItem(ViewGroup container, int position) {
            BasePager pager = mPagerList.get(position);
            container.addView(mPagerList.get(position).mRootView);

          // pager.initData();//初始化数据....不能放在此处初始化数据,否则会预加载下一个页面

            return mPagerList.get(position).mRootView;
        }
        @Override
        public void destroyItem(ViewGroup container, int position, Object object) {
            container.removeView((View) object);
        }
    }

监听viewpager

//监听页面
viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

    }

    @Override
    public void onPageSelected(int position) {
mPagerList.get(position).initData();//初始化当前被选中页面的数据
    }

    @Override
    public void onPageScrollStateChanged(int state) {

    }
});

        mPagerList.get(0).initData();//手动初始化首页

    }

传承者(Inheritors)欢迎各位纠正错误,评论,吐槽!!!

你可能感兴趣的:(ViewPager的某些性质)