我在执行新的分片嵌套功能,并有再次陷入一个问题。 我认为基本上是这样的:它包括一个片段(B),该片段(B)的主活性(A)包括具有3页它们中的每一个是片段(C)也寻呼机适配器。 此前新getchildfragmentmanger这不是可行的,但它完美。 但一个问题也出现,我想片段C到能够参加填充选项菜单。 我累了把setHasOptionsMenu(真)在每个我的C片段和压倒一切还的onActivityCreated方法onCreateOptionsMenu但没有任何反应......如果我尝试填充从B片段菜单(也就是寻呼机适配器的容器),我可以改变菜单项...
有什么想法吗 ?
谢谢。
是的他们可以。
在Android 4.2或支持库revisiion 11个嵌套片段参与填充选项菜单,如永诺需要调用setHasOptionsMenu(true)
期间onCreate()
但是,如果你正在使用ActionBarSherlock他们不会,你必须手动从父片段调用onCreateOptionsMenu()
嵌套片段方法onCreateOptionsMenu()
更新 : 问题
从我的源代码的读取,看来的实现FragmentManager
和Activity
仅与根工作FragmentManager
添加选项菜单/动作条,不和孩子FragmentManager
实例。
B片段大概需要代为管理的内容的选项菜单/操作栏ViewPager
,改变的是在基于页面的选项菜单/动作栏被显示和隐藏在寻呼机。