Android - NestedFragments参与填充选项菜单

sen*_*ior 15 android-fragments fragmentpageradapter

我正在实现新的嵌套片段功能,并遇到了问题.我的观点基本上是这样的:包含片段(B)的主要活动(A),该片段(B)包括具有3个页面的寻呼机适配器,每个页面也是片段(C).以前到新的getchildfragmentmanger这是不可行的,但它完美无缺.但确实出现了一个问题,我希望片段C能够参与填充选项菜单.我厌倦了在我的每个C片段上的onActivityCreated方法中设置setHasOptionsMenu(true)并覆盖onCreateOptionsMenu但没有任何反应...如果我尝试从片段B填充菜单(这是寻呼机适配器的容器)我可以更改菜单项......

有什么想法吗 ?

谢谢.

kre*_*ker 16

是的他们可以.

在Android 4.2或支持库revisiion 11个嵌套片段参与填充选项菜单,如永诺需要调用setHasOptionsMenu(true)期间onCreate().

但是如果你使用的是ActionBarSherlock他们不会,你必须从父片段onCreateOptionsMenu()嵌套片段方法手动调用onCreateOptionsMenu().

更新:问题


Com*_*are 11

从我的源代码的读取,看来的实现FragmentManager,并Activity仅与根的工作FragmentManager添加选项菜单/动作条,不和孩子FragmentManager的情况.

片段B可能需要代表内容管理选项菜单/操作栏,ViewPager根据在寻呼机中显示和隐藏的页面更改选项菜单/操作栏中的内容.