1

我有一个三星 Galaxy Tab3,我以通常的方式实现了菜单 - 即

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    MenuInflater inflater = getMenuInflater();
    inflater.inflate(R.menu.game_menu, menu);
    return true;
}

和选择的菜单

@Override
public boolean onOptionsItemSelected(MenuItem item) {
    // Handle item selection
    switch (item.getItemId()) {
    case R.id.new_game:
        newGame();
        return true;
    case R.id.help:
        showHelp();
        return true;
    default:
        return super.onOptionsItemSelected(item);
    }
}

在我的 xml 中,我用于 android:showAsAction="never"我想在溢出中看到 android:showAsAction="ifRoom"的项目和我想预先看到的项目。但在这款平板电脑中,我只看到设置了 ifRoom 的平板电脑,而其他平板电脑则消失了,菜单按钮不显示溢出项目。我已经查看了关于 SO 的所有答案,并尝试了一些流行的答案,比如设置minimum and target sdk versions to less than 11等。但是菜单不会出现。它在没有电容式菜单触摸的设备上运行良好,并且在操作栏中显示了溢出按钮。

4

2 回答 2

1

好吧,当我以编程方式调用时,它最终起作用openOptionsMenuonKeyDown

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {

         if (keyCode == KeyEvent.KEYCODE_MENU) {
            openOptionsMenu();
        }
        return true;
    };
于 2014-03-12T21:29:02.707 回答
0

也许您有一个不支持 ActionBar 的主题(如全屏)?

于 2014-03-11T14:41:08.210 回答