在FragmentStatePagerAdapter中保存状态和还原状态

Vai*_*ibs 6 android android-adapter android-fragments android-viewpager android-pageradapter

我用一ViewPagerFragmentStatePageAdapter我的屏幕上我有有许多图像,并享有5页.目前我mViewPager.setOffscreenPageLimit(1);只有当前,前一个和下一个将在内存中,其他2将被销毁.但是对于那些被破坏的片段,我想利用saveState()restoreState()适配器来维持它的状态,所以当我回到那个屏幕时,无论如何都会去onCreateView()那个片段维持状态.

由于mViewPager.setOffscreenPageLimit(4);存在内存问题,因此不是一个好选择.

我搜索了很多,但我没有得到任何使用这2个函数维持和恢复状态的样本.

有人可以帮助我继续.

pix*_*xel 2

FragmentStatePageAdapter处理它的状态请参阅:FragmentStatePagerAdapter.java

最好的方法是在回调中删除图像(例如从适配器中)onDestroyView并将它们重新加载到onCreatView. 片段和适配器将相应地恢复其状态。

唯一的问题是您不应该FragmentStatePagerAdapter每次都创建,onStart因为它不会知道保存的状态。