按下返回按钮后,onPrepareOptionsMenu(Menu)方法未被调用

4
我试图在地图活动中按下返回按钮后调用MainActivity中的onPrepareOptionsMenu(),但它只被创建一次后就不再被调用了。根据文档,它必须在菜单显示之前被调用。在调用onBackPressed()之后,这种情况是否有效?
准备屏幕的标准选项菜单以显示。这会在每次显示菜单之前立即调用。您可以使用此方法高效地启用/禁用项目或以其他方式动态修改内容。
2个回答

6

是的,您可以将此代码添加到您的活动中。这样做可以在您从任何其他活动返回时调用它。

@Override
public void OnStart()
{
   super.onStart();
    invalidateOptionsMenu();
}

那么关于参数菜单,因为我得到了The method onPrepareOptionsMenu(Menu) in the type MainActivity is not applicable for the arguments ()的错误信息,你有什么建议? - MrPencil

1
这是有关菜单的创建和准备工作的内容。
当 Activity 或 Fragment 创建时,onCreateOptionsMenu() 只会被调用一次。 onPrepareOptionsMenu() 通常用于动态控制内容。
要触发 onPrepareOptionsMenu(),您需要调用 invalidateOptionsMenu()

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接