android – 在第一次打开菜单时,Jelly bean不会调用onPrepareOptionsMenu()

我重写了PrepareOptionsMenu来隐藏和显示菜单项.当使用API​​级别16的仿真器进行测试时;在第一次打开菜单时,不会调用onPrepareOptionsMenu.但是当我重新打开菜单时,它可以工作.问题只在于第一次使用.你可以用它简单的测试一下;
@Override
public void onPrepareOptionsMenu(Menu menu) {
    Toast.makeText(this.getActivity(),"pre",Toast.LENGTH_SHORT).show();
    super.onPrepareOptionsMenu(menu);
}

有任何想法吗?

解决方法

每当用户在Gingerbread和下面打开菜单时,都会调用onPrepareOptionsMenu().从Honeycomb中选项菜单假定在ActionBar中存在项目时始终打开.

如果要在活动生命周期和onPrepareOptionsMenu()回调期间更新选项菜单,则需要调用invalidateOptionsMenu(),并调用onPrepareOptionsMenu().

您可以在onCreateOptionsMenu()回调中实现第一次使用的代码吗?每次创建选项菜单时都会调用它,并在首次使用时创建它.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...