Android 设置菜单操作可见性

Android set menu action visibility

我有 ActivityFragment 以及 android.support.v7.widget.Toolbar

onCreateOptionsMenu() 中创建菜单后,我可以通过使其可见或其他方式显示菜单项 "action" 吗?

(例如点击自定义按钮后)

您可以使用 onPrepareOptionsMenu 在用户单击菜单按钮时显示之前修改菜单。正如 javadoc 所述:

This is called right before the menu is shown, every time it is shown. You can use this method to efficiently enable/disable items or otherwise dynamically modify the contents.

Can I show menu item "action" after creating menu in onCreateOptionsMenu() by making it visible or something ?

yes by overriding onPrepareOptionsMenu method : 准备要显示的屏幕标准选项菜单。每次显示菜单时,都会在显示菜单之前调用它。您可以使用此方法有效地 enable/disable 项目或以其他方式动态修改内容。 您使操作项目可见或消失,如下所示(只是示例代码)。

@Override
public boolean onPrepareOptionsMenu(Menu menu) {
     MenuItem menuItemVadd = menu.findItem(R.id.action_vadd);
     if (isShowVisualAdd1) {
            menuItemVadd.setVisible(true);
     } else {
            menuItemVadd.setVisible(false);
     }
     return super.onPrepareOptionsMenu(menu);
}