: onCreate called for two tabs each time one tab is selected
解释了ABS(实际上是ViewPager)如何工作,以便ViewPager能够进行滚动。 很明显,至少需要同时创建一个上一页/下一页。
是否有可能以某种方式“缓存”不仅仅是上一个/下一个视图(片段):
我在第1页上,我有一个网络调用来获取一些数据(在Activity中执行此操作,而不是在Fragment中 - 顺便说一下。这样可以吗?)
切换到第2页,然后
切换到第3页,然后
切换到第1页=在这里我的页面被重新创建(虽然使用了一些缓存,但是,如果可能的话,我不需要任何娱乐)
所以,缓存所有页面会很好。如何实现这一点如果可能在当前版本(4)中,或者这将是一些新功能?
甚至更好的问题,如何推迟/禁用销毁视图?
答案 0 :(得分:23)
我想如其他人可能会有所帮助,正如网站上指出的那样 http://storkme.org/2011/12/tabs-done-right-viewpager-and-fragments/
已经有一种方法允许您预定义ViewPager将从重新创建中保存的“缓存”页数。
mViewPager.setOffscreenPageLimit(3);
感谢Jake提醒我做一个不同的G搜索:)