2014-09-02 116 views
2

还有一个Activity,一面菜单和许多Fragment秒。当我在侧面菜单中选择菜单时,会将一个特定的Fragment添加到活动中,并删除前一个。在这个应用程序中,我必须缓存Fragment对象吗?或者每次我选择菜单时重新创建新的Fragment?哪一个更好?缓存片段是一种很好的做法吗?

+0

请参阅本http://stackoverflow.com/questions/11291739/how-to-cache-a-fragment-view – 2014-09-02 04:06:23

回答

3
do I have to cache Fragment object? 

请记住,如果你在它的缓存与多个视图中的片段,它可以成本你内存,并且可以导致OutOfMemoryException你堆已满,你到另一个片段内存分配。

or just recreate new Fragment every time I selected menu? which one is better? 

如果你的片段没有很多的视图,那么我会缓存每一边只有1或2片段。

比方说你有5个片段(1 - 2 - - 4 - 5)您目前在3rd fragment我只会缓存第二和片段没有1st and 5th fragment如果我改变片段然后我会缓存3rd and 5th fragment删除缓存第二片段。现在,如果你这样做,那么你可以节省时间再次将其渲染到屏幕上。但永远记住,它会花费你的记忆。

如果要专门为较低的堆大小设备中的存储应用明智然后每次选择一个菜单时重建片段。

+0

非常感谢你。 – Cinakyn 2014-09-02 06:14:43

+0

@Cinakyn欢迎您和编码愉快:)) – 2014-09-02 06:15:16

相关问题