点击菜单按钮时 Android onCreateOptionsMenu 不会被调用

标签 android menu

我遇到的问题是,当我点击菜单按钮时,我的应用程序不显示选项菜单。调试显示点击菜单按钮后不会调用 onCreateOptionsMenu(Menu menu) 方法。我有另一个应用程序,其菜单代码相同,并且可以正常工作。现在我的代码:

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.app_menu, menu);
    return true;
}

@Override
public boolean onOptionsItemSelected(MenuItem item) {

    switch (item.getItemId()) {
        case R.id.options:
            Intent intent = new Intent(this, OptionsActivity.class);
            startActivityForResult(intent, 1);
            return true;
        default:
            return super.onOptionsItemSelected(item);
    }

}

在资源 -> 菜单 -> app_menu.xml

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
   <item android:id="@+id/options" android:title="@string/options" /> 
</menu>

我不知道为什么点击菜单按钮后不调用 onCreateOptionsMenu 。希望大家能够帮助我。

编辑:我没有使用 Fragments,并且 onCreateOptionsMenu 实际上从未被调用。不是在应用程序启动时,也不是在我点击设备上的菜单按钮时。

最佳答案

从您的帖子中不确定您正在使用 Fragments。如果是这样,您必须通过

设置菜单选项
setHasOptionMenu(true);

从 Fragment 的 onCreate() 调用此方法,然后将显示选项菜单。

关于点击菜单按钮时 Android onCreateOptionsMenu 不会被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19242650/

相关文章:

python - Spyder 3.0 不让我运行文件

javascript - AngularJS 下拉菜单始终处于打开状态

java - Java 中未出现菜单栏

Android Firebase 只更新部分字段

java - 将 xml 转换为 xsl

java - Android编译,方法太多

javascript - jQuery/JS/etc 菜单生成器

java - 无法从 JNI 调用回调函数

android - 检测应用程序何时打开/恢复

android - 如何实现siyamed的卫星菜单?