Android 设置菜单操作可见性
Android set menu action visibility
我有 Activity
和 Fragment
以及 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);
}
我有 Activity
和 Fragment
以及 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);
}