【问题标题】:Android: onCreateOptionsMenu - Remove Default Menu ItemAndroid:onCreateOptionsMenu - 删除默认菜单项
【发布时间】:2013-02-05 21:17:06
【问题描述】:

我正在使用onCreateOptionsMenu,并且有一个我没有编程的默认菜单项。我想删除它,因为我没有用它,它也没有做任何事情。这是它的样子:

我想去掉“设置”项。

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    menu.add(1, 1, 0, "item1");
    menu.add(1, 2, 1, "item2");

    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_name, menu);
    return true;
}

如您所见,我并没有自己手动添加。我该如何摆脱它?

【问题讨论】:

    标签: android oncreateoptionsmenu


    【解决方案1】:

    检查 R.menu.activity_name 的内容或过去这个 xml 文件的数据。

    【讨论】:

      【解决方案2】:

      如您所见,我没有自己添加它

      是的,你有。它来自:

      getMenuInflater().inflate(R.menu.activity_name, menu);
      

      我该如何摆脱它?

      删除上述行。或者,将您基于 Java 的 Menu 操作移动到 res/menu/activity_name.xml 并从该文件中删除“设置”。

      【讨论】:

      • 我认为 getMenuInflater 是导致列表弹出的原因。那么删除它,不会导致菜单无法打开吗?
      • @lord_sneed:“我认为 getMenuInflater 是导致列表弹出的原因”——不。 “所以去掉那个,不会导致菜单打不开吗?” - 不。您可以通过摆脱线路来测试这一点。或者,您可以阅读 MenuInflater 上的 inflate() 方法的文档以了解它的作用:goo.gl/3WI23
      • 这是我第一次处理 onCreateOptionsMenu,所以我很抱歉过去没有真正关注 /res 中的菜单文件夹。不到两个月前,我才开始自学所有这些。
      【解决方案3】:

      设置选项是eclipse在菜单xml中自动生成的。从 xml 菜单中删除它,该选项将不再显示。

      【讨论】:

        猜你喜欢
        • 2013-04-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-08-23
        • 2010-12-13
        • 1970-01-01
        • 2013-08-03
        • 2012-01-31
        相关资源
        最近更新 更多