0

我已经使用FragmentActivity,ViewPagerAdapterFragment来构建选项卡格式。我的有 3 个标签FragmentActivity。我很困惑Fragment onCreateView是在调用FragmentActivity方法时调用所有方法还是调用选项卡的 onCreateView 方法onClick?我已经onCreateView为所有 3 设置了 3 个断点方法Fragments。在调试期间,我发现只onCreateView调用了前 2 个方法。请解释为什么只调用 2 个?

4

2 回答 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 回答