如何隐藏菜单栏,但仍然通过menubutton访问它

时间:2012-12-10 23:12:30

标签: java android android-layout

所以这是交易,我有以下

enter image description here

我想删除它,但仍然可以通过菜单按钮访问菜单项,这可能吗?

enter image description here

这是我的菜单xml文件

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
    <item
        android:id="@+id/updateShares"
        android:orderInCategory="100"
        android:showAsAction="never"
       android:title="Refresh"/>        
</menu>

这是我创建菜单的代码

@Override
    public boolean onCreateOptionsMenu(Menu menu){
      MenuInflater inflater = getMenuInflater();

      inflater.inflate(R.menu.activity_action_bar_main, menu);
        return true;
    }

修改 _____________________________________________________________________

当你按下手机上的菜单按钮时,我仍然希望显示“刷新”菜单,我只想删除菜单栏,这就是为什么我无法将任何选项菜单设置为visible = false因为那时我可以按菜单栏时看不到它们。 enter image description here

3 个答案:

答案 0 :(得分:0)

  1. 您只需添加onCreate以下代码段即可: this.requestWindowFeature(Window.FEATURE_NO_TITLE);所以你的标题栏就会消失。

  2. 这可以帮助您删除菜单项https://stackoverflow.com/a/13099201/1045579

答案 1 :(得分:0)

我不确定mark166的答案。您也可以尝试this link。我所做的另一件事你可以尝试......

单击“菜单”时,不要夸大布局。甚至不要创建menu.xml文件。

您可以尝试使用java文件中的以下代码

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        switch (keyCode) {
        case KeyEvent.KEYCODE_MENU:
            Toast.makeText(getApplicationContext(), "Do what you want to show here", Toast.LENGTH_SHORT).show();
            break;

        }
        return true;
    }

它适用于我,并在应用程序中使用相同的东西。

您只需为菜单注释代码并尝试使用此代码。

希望它会对你有所帮助。

答案 2 :(得分:0)

根据您的第二个屏幕截图将目标SDK版本更改为4.0.3,因此菜单...将不可见。