如何动态隐藏菜单项

She*_*hav 0 android

我必须动态隐藏菜单项。下面我写了menu.xml文件代码

  <?xml version="1.0" encoding="utf-8"?>
    <menu xmlns:android="http://schemas.android.com/apk/res/android">
        <group android:checkableBehavior="single" android:id="@+id/menu1">
            <item
                android:id="@+id/Admin"
                android:title="Admin" />
        </group>
        <group android:checkableBehavior="single" android:id="@+id/menu2">
            <item
                android:id="@+id/Worker"
                android:title="Worker" />
        </group>
    </menu>
Run Code Online (Sandbox Code Playgroud)

使用 Worker 登录时,我必须隐藏 Admin 菜单。

小智 6

以下更改将帮助您在程序中动态隐藏/显示菜单

private Menu menuList;

.
.
.

@Override

 public boolean onCreateOptionsMenu(Menu menu)
{

    this.menuList = menu;
    getMenuInflater().inflate(R.menu.options, menu);
    return true;
}

// ........

private void hideMenu()
{

    MenuItem item = menuList.findItem(R.id.submitmenu);
    item.setVisible(false);
}


private void showMenu()
{

    MenuItem item = menuList.findItem(R.id.submitmenu);
    item.setVisible(true);
}
Run Code Online (Sandbox Code Playgroud)