单击actionbar android时隐藏/显示菜单项

单击actionbar android时隐藏/显示菜单项,android,onclick,android-actionbar,menuitem,Android,Onclick,Android Actionbar,Menuitem,我一直试图让我的actionbar按钮在点击时显示,但无法使其工作。我有两个按钮,如果我点击其中一个,我希望另一个显示,另一个不受攻击。 这是我的密码: @Override public boolean onOptionsItemSelected(MenuItem item) { MenuItem brandsMenu = (MenuItem)findViewById(R.id.action_brands); MenuItem categoryMenu = (MenuItem)f

我一直试图让我的actionbar按钮在点击时显示,但无法使其工作。我有两个按钮,如果我点击其中一个,我希望另一个显示,另一个不受攻击。 这是我的密码:

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    MenuItem brandsMenu = (MenuItem)findViewById(R.id.action_brands);
    MenuItem categoryMenu = (MenuItem)findViewById(R.id.action_category);
    switch (item.getItemId()) {
        case R.id.action_category:
            brandsMenu.setVisible(true);
            return true;
        case R.id.action_brands:
            categoryMenu.setVisible(true);

    }

这只显示错误。有什么建议吗?

您不能在菜单项上设置可见性。 您应该使“选项”菜单无效,只添加要显示的菜单项

当您要更改菜单时需要调用的菜单项


然后使用创建选项菜单上的
覆盖来应用这些更改。

定义名为brandsMenu和categoryMenu的菜单项,并在PrepareOptions菜单上初始化它们

categoryMenu = menu.findItem(R.id.action_category);
brandsMenu = menu.findItem(R.id.action_brands);

您应该能够更改可见性,例如
categoryMenu.setVisible(true)

如果使用支持库,请调用
supportInvalidateOptionsMenu()