Viewpager,片段在活动休闲的生命周期

时间:2014-05-13 11:21:04

标签: android android-fragments android-viewpager fragment

我有一个使用FragmentPagerAdapter的ViewPager实例的FragmentActivity。我首先创建一个片段实例列表,然后将其传递给适配器,以便它可以返回正确页面的正确片段。

我现在的问题是如何处理Activity娱乐。假设应用程序已停止,后台活动将被销毁,稍后活动将恢复。 我知道onCreate中的活动将首先根据它在bundle中传递的FragmentState实例重新创建片段。然后创建一组其他片段并传递给适配器,这当然不是我想要的。

这里的常见做法是什么?是否可以避免在onCreate方法中重新创建片段?或者我应该尝试重用重新创建的片段并将它们传递给适配器吗?

1 个答案:

答案 0 :(得分:0)

让片段重新创建是一种常见做法,但在特定情况下,您可能希望使用Fragment.setRetainInstance(),但一般情况下,可以重新创建UI。尝试使用它,或尝试防止在旋转时破坏活动可能会导致不良行为,有时会使应用程序过于复杂。

这就是为什么理想情况下你将模型放在UI类之外(例如Activity,Fragments),因为你可以轻松地重新创建以前的状态。