Android笔记之pagerAdapter两个子类的区别和选用

来源:互联网 发布:苹果电脑如何装windows 编辑:程序博客网 时间:2024/05/16 00:41

viewPager组件的适配器可以使用pagerAdapter,也可以使用pagerAdapter的两个子类

分别是FragmentPagerAdapterFragmentStatePagerAdapter下面来说说两者区别


FragmentPagerAdapter

用法:

private class HomeAdapter extends FragmentPagerAdapter{    public HomeAdapter(FragmentManager fm) {        super(fm);    }    @Override    public boolean isViewFromObject(View view, Object object) {        return view==object;    }    @Override    public Fragment getItem(int position) {        return FragmentFactory.getFragment(position);    }    @Override    public int getCount() {        if(mMainTitles!=null)            return mMainTitles.length;        return 0;    }}


FragmentStatePagerAdapter

用法和FragmentPagerAdapter是一样的

区别:

FragmentPagerAdapter具有缓存机制,在fragment第一遍滑动时会将fragment缓存在容器中,第二次滑倒该fragment直接在缓存中获取fragment而不会重新创建新的fragment,适合在viewPager中的fragment数量不多的时候使用。

     FragmentStatePagerAdapter没有缓存机制,每次都会重新创建新的fragment,适合在viewPager中数量较多的时候使用

0 0