Android 以编程方式关闭选项菜单

Android 以编程方式关闭选项菜单,android,android-menu,android-optionsmenu,Android,Android Menu,Android Optionsmenu,我有一份只有一个菜单项的菜单。当用户单击操作栏中的菜单图标时,我通过覆盖onmenuOpen()自动为用户选择该菜单项,如下所示: @Override public boolean onMenuOpened(int featureId, Menu menu) { if(menu != null) { onOptionsItemSelected(menu.getItem(0)); closeOptionsMenu(); } retur

我有一份只有一个菜单项的菜单。当用户单击操作栏中的菜单图标时,我通过覆盖
onmenuOpen()
自动为用户选择该菜单项,如下所示:

@Override
public boolean onMenuOpened(int featureId, Menu menu)
{
    if(menu != null)
    {
        onOptionsItemSelected(menu.getItem(0));
        closeOptionsMenu();
    }
    return super.onMenuOpened(featureId, menu);
}
这里的问题是菜单打开后没有关闭。因此,这个菜单项打开了另一个片段,当用户返回到他单击菜单的原始片段时,它仍然打开


如何关闭它?

您可以使用
关闭选项菜单()
以编程方式关闭选项菜单

现在尝试更改
关闭选项菜单()
的位置。在选项ItemSelected()之前调用它

链接:

您可以使用
关闭选项菜单()
以编程方式关闭选项菜单

现在尝试更改
关闭选项菜单()
的位置。在选项ItemSelected()之前调用它

链接:

选择无效后,尝试添加无效选项菜单没有帮助。。。按Back键时菜单仍显示从片段或活动调用菜单项?onCreateMenu和onOptionItemSelected在活动级别完成。它是AppCompativeActivity在选择后尝试添加InvalidateOptions菜单没有帮助。。。按Back键时菜单仍显示从片段或活动调用菜单项?onCreateMenu和onOptionItemSelected在活动级别完成。它是AppCompativeActivity更改调用位置没有帮助确定,请尝试一件事,在onOptionItemSelected()中调用CloseOptions菜单()函数,而不是在onMenuOpened()中。我尝试在操作本身之前和之后调用,但菜单仍然保持打开状态。我想说的是,在onOptions ItemSelected()实现中调用CloseOptions menu()。你做到了吗?是的。在正在调用的操作之前和之后添加了它,但仍然没有帮助更改调用的位置没有帮助确定,请尝试一件事,在执行所需操作后,在OnOptions ItemSelected()函数中调用CloseOptions Menu(),而不是在OnMenuOpen()中。我尝试在操作本身之前和之后调用,但菜单仍然保持打开状态。我想说的是,在OnOptions ItemSelected()实现中调用CloseOptions menu()。你做到了吗?是的。在被调用的操作之前和之后添加了它,但仍然没有帮助