我有一台运行Android 4.1.1的谷歌Nexus 7平板电脑,我似乎无法让我的应用程序在右下方显示“垂直线上的三个小方块”符号,表示有一个选项菜单可用。我的版本,针对2.3.3,将在其他设备(2.3.3手机和4.0.3手机)上显示选项菜单,但不会在Nexus 7上显示。为了说明问题,我使用Eclipse构建了两个裸机“Hello World”,附带一个选项菜单项“设置”,还构建了Android-10 SDK中的BluetoothChat示例。一个没有菜单符号的准系统,而BluetoothChat则没有。看看每个的代码,我看不出在构造和通货膨胀方面如何处理菜单的区别,所以我希望有人有一些想法。好的菜单图标:http://i.imgur.com/31Wop.jpg没有菜单图标:http://i.imgur.com/9Vj3e.jpg
答案 0 :(得分:15)
发现问题。在清单中我有
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="15" />
将其更改为
<uses-sdk
android:minSdkVersion="10"
android:targetSdkVersion="10" />
解决了问题,现在出现了ActionBar上的菜单按钮。 BluetoothChat示例有效,因为它的清单省略了targetSdkVerion:
<uses-sdk minSdkVersion="6" />
答案 1 :(得分:0)
从我的测试显示,你可以坚持使用minSdkVersion和targetSdkVersion,即使它们不相同。只要项目构建目标(在项目属性中定义)具有与minSdkVersion相同的值。对我来说,我希望在2.2版本中使用旧菜单,但在3.0版本和更高版本中使用新版本(在标题栏中)。
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="17" />
在项目属性中:
# Project target.
target=android-8
似乎可以通过在2.2和2.3虚拟设备的底部(或使用菜单按钮)显示旧选项菜单,并在我的3.0,4.0和4.2虚拟和物理设备上显示新选项菜单。
答案 2 :(得分:0)
做了类似这样的事情来自android 4.0及以上显示选项菜单
。getWindow()requestFeature(Window.FEATURE_ACTION_BAR);