2

我实现了一个适用于 2.1 及更高版本的应用程序。但是我的应用程序具有退出应用程序的菜单功能。我在 Ice Cream Sandwich(ICS,4.0 版)设备中安装了该应用程序,它运行良好。但是 ICS 没有菜单按钮——取而代之的是操作栏。我对这个概念很陌生。我想将它集成到我的应用程序中。我试过了,但我没有成功。

为此,我遵循以下步骤:

  1. android:targetSdkVersion="11"在 Android 清单中。
  2. android:showAsAction="ifRoom|withText"--> 添加到 menu.xml(位于菜单文件夹中),但出现以下错误:

在包“android”中找不到属性“showAsAction”的资源标识符

4

2 回答 2

2

您应该从一个有效的选项菜单实现开始。在 1.x 或 2.x 模拟器上对其进行测试以确保其正常工作。然后将您的设置targetSdkVersion为 >=11(如果还没有)并验证菜单是否出现在>=3.0 的ActionBar中。只有运行 Android 3.0 或更高版本的设备或模拟器才会绘制操作栏。旧版本仍然使用选项菜单。 一旦菜单出现在 ActionBar 中,您就可以开始将showAsAction属性添加到菜单 XML 中的各个项目。

设置targetSdkVersion

打开您的项目属性,选择 Android,然后选择一个 Android SDK 来链接您的项目。对于 Project 属性和您的Android Manifest targetSdkVersion,我建议使用可用的最新 SDK。

说明设置 targetSdkVersion 的屏幕截图

minSdkVersion定义应用程序将在其上运行的最低 Android 版本。 targetSdkVersion定义了应用程序在构建时知道的最高 Android 版本——哪些类和方法可用,定义了哪些常量等。它可以在较新的版本上运行,但它不知道在targetSdkVersion.

有关API 级别的更多信息。

如果您希望 ActionBar 在 Android <3.0 上显示,请基于Action Bar Sherlock或SDK 中的Action Bar Compatibility示例制作一个项目。但是,在您对 >= 3.0 中的 ActionBar 感到满意之前,请不要尝试此操作。

于 2012-05-25T07:30:04.263 回答
0

你可以在这里找到一个很好的示例代码。

于 2012-05-25T10:50:54.480 回答