我已经使用FragmentActivity
,ViewPagerAdapter
和Fragment
来构建选项卡格式。我的有 3 个标签FragmentActivity
。我很困惑Fragment
onCreateView
是在调用FragmentActivity
方法时调用所有方法还是调用选项卡的 onCreateView 方法onClick
?我已经onCreateView
为所有 3 设置了 3 个断点方法Fragments
。在调试期间,我发现只onCreateView
调用了前 2 个方法。请解释为什么只调用 2 个?
问问题
458 次
2 回答
1
ViewPagerAdapter 将根据用户需要管理创建片段和销毁片段。所以如果你不设置mViewPager.setOffscreenPageLimit(NUM_TABS-1),默认是1(你可以参考这里)
这就是为什么它只创建前 2 个选项卡的原因,当您选择 tab3 时,它将破坏 tab1 的片段并创建 tab3 的片段。对于您的情况,如果您在调试时设置mViewPager.setOffscreenPageLimit(2),您将看到它调用了 3 个 onCreateView 方法并且不会破坏任何片段的视图。希望这有帮助。
于 2013-03-12T02:25:36.990 回答
0
它们是根据用户需求创建和销毁的。如果您滚动到第二个片段,您会看到它已创建。这只是一个优化。您是否认为具有例如 8 个片段的应用程序需要将 8 个片段保留在内存中?这将是资源的浪费。
于 2013-03-12T02:07:29.197 回答