2011-03-11 94 views
9

我想让我的应用程序向后兼容,所以我需要显示菜单按钮 ,因为我们在以前版本的应用程序中使用了菜单按钮。android蜂窝菜单按钮目标

所以我在读,它说,如果你的目标是11(3.0)比你没有得到菜单按钮,但它的目标是10他们你。

但问题是我使用的片段,我的目标必须是11

任何想法。

+0

我的想法:使用新的API移动,不要试图与更改来取回旧功能,只需使用它。 – 2011-03-11 22:51:22

+0

什么是“菜单按钮”?你能澄清吗? – Bostone 2011-04-04 15:33:02

+0

查看此博客文章:http://android-developers.blogspot.com/2012/01/say-goodbye-to-menu-button.html。将目标SDK设置为14,将最小SDK设置为您想要的任何其他设置。不要忘记编辑menu.xlm文件以将您的菜单选项添加到操作栏。看到这篇文章:http://stackoverflow.com/a/9440194/1172181 – Luis 2012-02-25 01:59:09

回答

12

无论Android版本如何,都会显示普通选项菜单。如果您有:

android:targetSdkVersion="11" 

然后选项菜单将出现在Android 3.0+设备上的操作栏中。单击右上角的“溢出”按钮时,选项菜单中的所有项目都可用。即使您的<uses-sdk>清单元素中有android:targetSdkVersion="11",您的选项菜单也会正常显示在Android 1.x和2.x设备上。

如果您重写MENU按钮以具有其他行为,则需要针对API Level 11和更高版本为该行为创建一些其他触发器。重写菜单按钮从一开始就不是一个好主意,正如你所看到的,现在它甚至不是一个好主意。如果您有android:targetSdkVersion="11",我知道无法在Android 3.0设备上获取MENU按钮。 ,为了获得在平板电脑上旧的选项菜单为我工作

+0

我有同样的问题马克与至少一个用户。我什么都不做,它只是一个有一些选项的菜单。目标设置为11,就像您在答案中显示的一样,并且所有内容都可以在仿真器中按照预期工作。然而,我至少有一个报告的情况,用户在操作栏上看不到菜单“网格”图标。如果通过“操作栏”,你的意思是黑色的“脚踏板”,通常显示“回”,“家”和“正在运行的应用程序”图标 – Bostone 2011-04-04 15:32:16

+0

@ DroidIn.net:如果targetSdkVersion设置为11,并且用户正在运行蜂窝,他们将不会在系统栏中看到选项菜单软按钮。他们不应该。选项菜单将位于屏幕右上角的操作栏中。如果您禁用了操作栏,它们将无法访问您的菜单选项。 – CommonsWare 2011-04-04 16:46:36

+0

我应该将它设置为10,是否有帮助?我确实禁用了应用程序工具栏。 – Bostone 2011-04-05 21:25:48

3

的一件事是我用过之后执行以下操作:

minSdkVersion="11" 
targetSdkVersion="10" 

我想在这里帮助了是我,说明该应用程序有系统已经针对API 10进行了测试,因此我获得了更旧的选项菜

而且由于我的应用程序仅适用于平板电脑,因此将minSdkVersion保留为11还可防止将其安装在较小的设备上。我知道,我可能仍然需要查看具有ICS的小型设备的安装情况。