onCreateOptionsMenu 没有在 Fragment 内被调用
Posted
技术标签:
【中文标题】onCreateOptionsMenu 没有在 Fragment 内被调用【英文标题】:onCreateOptionsMenu not getting called inside the Fragment 【发布时间】:2013-10-21 09:38:21 【问题描述】:onCreateOptionsMenu 方法永远不会被调用,即使我已经完成了其他类似问题的所有步骤(比如这个:Menu inside fragment not getting called; 还有这个:onCreateOptionsMenu not being called on FragmentActivity when run on phone version)
1) 我在 Fragment 的 onCreate 方法中调用 setHasOptionsMenu(true)
2) 我像这样覆盖 onCreateOptionsMenu(Menu menu, MenuInflater inflater) 方法
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater)
inflater.inflate(R.menu.main, menu);
[ 3) 而且我还实现了 onOptionsItemSelected(MenuItem item) ]
WTH?
附:我正在使用 android-support-v4.jar。
P.P.S @Philipp Jahoda,我确实在 Fragment 的托管 Activity 中实现了 onCreateOptionsMenu(...)。
【问题讨论】:
【参考方案1】:问题解决了。
我正在使用 ActionBarSherlock,但我的片段类正在扩展“片段”类而不是“SherlockFragment”。所以 onCreateOptionsMenu 方法没有被调用。
就这么简单..
【讨论】:
以上是关于onCreateOptionsMenu 没有在 Fragment 内被调用的主要内容,如果未能解决你的问题,请参考以下文章
在手机版本上运行时,没有在 FragmentActivity 上调用 onCreateOptionsMenu
如何在选项卡 Activity 的片段中使用 onCreateOptionsMenu? (夏洛克动作条)
Android无菜单键,如何触发onCreateOptionsMenu(Menu menu)