将ViewPager与Fragments一起使用时,会在滑动时销毁碎片

use*_*024 5 android fragment android-viewpager

我的应用程序有一个ViewPager,其适配器返回三个片段.每个Fragment都会在onCreateView中从Web加载一个数据列表.所以让我们称这些片段为A,B,C.

一旦打开包含viewPager的活动,就会加载片段A和B. 但现在只有A可见.因此,如果我向右滑动,则B可见,并且C在场景后面加载.如果我再次向右滑动,则可以看到C. 问题是,片段A的onDestroyView()被调用,所有加载的数据都消失了!因此,如果我回到片段A,则再次调用A的onCreateView(),并再次从Web加载A的数据.

与Fragment一起使用时,它是ViewPager的默认行为吗?是否有可能将片段活着(通过不调用onDestroyView()),即使它不可见?

谢谢

Ada*_*hns 10

尝试:

yourViewPager.setOffscreenPageLimit(2)
Run Code Online (Sandbox Code Playgroud)

其中2是要保留在当前页面任一侧的内存中的页面数量.