我已经推荐了很多文章,但我没有得到“如果任何用户点击手机的菜单按钮,那么它将只显示选项菜单而非上下文菜单... 如果有其他方法通过单击移动设备上的菜单按钮显示上下文菜单,请建议我。
答案 0 :(得分:1)
我的关注链接是您正在寻找的: Android: How can I set a listener to the MenuButton?
即。
通常您不应该覆盖MENU
行为,因为用户希望菜单出现,但您可以使用以下内容:
/*
* @see android.app.Activity#onKeyDown(int, android.view.KeyEvent)
*/
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ( keyCode == KeyEvent.KEYCODE_MENU ) {
Log.d(TAG, "MENU pressed");
// Your context opening code....
return true;
}
return super.onKeyDown(keyCode, event);
}
答案 1 :(得分:0)
从Android 3.0(API级别11)开始,不再需要Android设备提供专用菜单按钮。
因此,虽然我会反对这一点,但这是解决问题的方法之一。
如果要显示ContextMenu而不是选项菜单,请在onPrepareOptionsMenu()
中添加如下命令:
openContextMenu(getCurrentFocus());