android onPrepareOptionsMenu没有第二次按菜单按钮

时间:2013-03-12 11:10:42

标签: android android-actionbar menubar

我注意到在我的活动中实现onPrepareOptionsMenu()时 - 第一次按下效果很好 - 来自onPrepareOptionsMenu()的回调开始。但是当它仍然可见时(打开一些对话框)我希望第二次按下它关闭它(触发回调以关闭对话框) - 第二次按下菜单按钮不会触发onPrepareOptionsMenu()。不确定为什么

这是我实现它的方式:

 @Override
public boolean onPrepareOptionsMenu(Menu menu) {

    if (onDoneListener != null) {
        onDoneListener.OnDone();

    }
    return false;
}

EDIT1:

我在评论者的帮助下添加了下一个功能,但仍然没有运气。 OnKeyDown()也没有按下接收下一个菜单按钮。看起来菜单按钮在我按下后退按钮之前没有得到事件。这是代码:

    @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_MENU) {
        if (onDoneListener != null)
            onDoneListener.onDone();

    }
    return super.onKeyDown(keyCode, event);
}

我也试图回归真假而不是运气。

1 个答案:

答案 0 :(得分:0)

您所看到的是OnPrepareOptionsMenu的确切行为。在显示菜单之前 之前运行