我有一个ViewPager
包含5 Fragments
,每个ListView
包含1个ListView
,其中包含我下载的一些数据。
我现在正在制作一个刷新方法并更新数据onCreate()
的显示,我只是回想起我用来设置它的代码,就像我在mSectionsPagerAdapter = new SectionsPagerAdapter(getSupportFragmentManager());
mViewPager.setAdapter(mSectionsPagerAdapter);
mViewPager.setOffscreenPageLimit(4);
- 方法中所做的那样,是这样的:
mSectionsPagerAdapter
我的public class SectionsPagerAdapter extends FragmentPagerAdapter {
public SectionsPagerAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int i) {
return MyFragment.newInstance(i);
}
@Override
public int getCount() {
return 5;
}
@Override
public CharSequence getPageTitle(int position) {
return "Title";
}
}
看起来像这样:
{{1}}
但我敢打赌,有一种更有效的方式来更新ViewPager,而不仅仅是重新创建它。有什么建议吗?
答案 0 :(得分:0)
这已经是创建片段的有效方法。片段管理器将为您缓存片段。只有当片段被破坏时才会调用getItem()
,因此您不必担心它。
另一方面,如果您认为您的片段会消耗相对较多的内存,请考虑使用FragmentStatePagerAdapter
代替。