菜单由ActionBar取代

时间:2012-06-07 09:35:02

标签: android

Google文档说菜单在3.0中被ActionBar取代,菜单将成为ActionBar本身。所以我启动了3.0和4.0的模拟器,但菜单仍然显示为菜单。我错过了什么吗?

编辑: 我正在使用minSdkVersion 4,那么3.0或更高版本的设备会出现问题吗?

1 个答案:

答案 0 :(得分:2)

您需要使用API​​级别15或更高版本构建应用程序。为此,请在清单中使用以下内容:

<uses-sdk
    android:minSdkVersion="8"
    android:targetSdkVersion="15" />

minSdkVersion定义了与您的应用程序兼容的最低API,菜单仍将显示为菜单。在Android 3.0或更高版本中,菜单将显示操作栏上的溢出按钮。

另外,您可以使用以下内容将MenuItem显示为操作:

if (VERSION.SDK_INT >= 11){
    theMenuItem.setShowAsAction(SHOW_AS_ACTION_IF_ROOM);
}

或在xml中

<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+id/the_menu_item"
          android:title="@string/the_item"
          android:showAsAction="ifRoom"/>
</menu>

此代码仅在Honeycomb或更高版本上执行。