Fragment的onCreateOptionsMenu调用了两次

时间:2014-03-03 09:56:26

标签: android android-fragments android-viewpager

情境: 我在片段中使用ViewPager。此ViewPager使用FragmentPagerAdapter膨胀3个片段(AFragment,BFragment,CFragment)。

我在里面打印了日志 onCreateOptionsMenu onPrepareOptionsMenu 所有3个片段。

问题:

  

对于在onCreateOptionsMenu上创建的AFragment仅被调用一次,   但是当我刷到BFragment onCreateOptionsMenu和   forPrepareOptionsMenu for BFragment被调用了两次。和类似的   事情发生在CFragment。

任何人都可以解释为什么会这样,以及如何避免它? 感谢。

1 个答案:

答案 0 :(得分:0)

因为android默认情况下会在后台加载下一个和上一个片段,以便有效加载片段并消除滞后。

但是,您可以使用setOffscreenPageLimit(int limit)自定义相同内容,用于设置要在后台加载的额外片段的数量。默认情况下,它设置为1。

阅读Android fragments strange load了解更多信息