选项菜单在硬件按钮上自动关闭(actionbarsherlock)

时间:2013-06-27 15:56:15

标签: android actionbarsherlock android-actionbar

我正在使用actionbarsherlock,在那里我收听键盘事件,如果是硬件菜单按钮,我强制菜单显示如下

public boolean onKeyDown(int keyCode, KeyEvent event) {
try {
    if(event.getAction() == KeyEvent.ACTION_DOWN){
        switch(keyCode) {
        case KeyEvent.KEYCODE_MENU:
            if (mMenu != null && mMenu.findItem(R.id.training_action_menu_group1) != null) {
                mMenu.performIdentifierAction(R.id.training_action_menu_group1, Menu.FLAG_PERFORM_NO_CLOSE);
            }

            return true;  
        }
    }
    return false;
} catch (Exception e) {
    ErrorUtil.handleSilentException(e);
    Log.e(TAG, "Error onKeyDown", e);
}
return false;
}

问题是当用户将手指放在硬件菜单按钮上时显示菜单,当他将手指移开时 - 菜单关闭。这适用于SGS 3和其他设备。 标志Menu.FLAG_PERFORM_NO_CLOSE似乎与此问题无关,但它以某种方式解决了其他Android 2.3手机的问题。

当用户将手指从按钮中移开时,如何让菜单保持打开状态?

0 个答案:

没有答案