如何缓存片段视图

时间:2012-07-02 10:19:50

标签: android caching view fragment

我想缓存片段视图。 “我的活动”具有可滑动的选项卡,每个选项卡都调用不同的片段。但是当我在标签之间滑动时,由于片段视图的破坏,过渡看起来非常缓慢,在滑动操作期间会重建。有谁知道如何缓存每个片段的视图以防止这个问题? 我使用库支持v4和api 14

我试图为片段实现一个构造函数,由片段的活动容器调用:我调用构造函数,片段被创建为活动类的变量,然后,每当片段必须显示自己时,活动class返回我之前创建的片段对象,但这并没有改善我的应用程序,因为片段的视图无论如何都被破坏了

1 个答案:

答案 0 :(得分:23)

这是因为在内部默认情况下,寻呼机当时最多加载3页(片段): 一个显示,上一个和下一个,所以如果你有5个片段,这将在你从第一个移动到最后一个时发生:(其中x是一个加载的片段)

XX000 - > xxx00 - > 0xxx0 - > 00xxx - > 000xx

尝试使用

myPager.setOffscreenPageLimit(ITEMS_COUNT-1);

这将告诉寻呼机将所有这些内容保留在内存中,而不是每次扫描都要销毁/创建(仔细查看内存管理)