在我正在开发的游戏中,当按下菜单按钮时,我会弹出一个游戏内菜单。但是,我最近发现新版本的Android没有菜单按钮,而是一个动作栏。
要注意,我没有使用实际的Android菜单。我正在做的就是检测到按下菜单按钮,然后在游戏中处理事件。这意味着我需要的只是用户可以按下并检测到它被按下的东西。
所以我的问题是,我如何同时支持菜单按钮和更新的操作栏?我希望我的应用程序能够支持7级当前的API级别。
更新
好的,在阅读that article之后,我想重新解释一下我的问题。它说它“添加了系统导航旁边的动作溢出按钮”。我的清单有android:minSdkVersion =“7”android:targetSdkVersion =“13”但我的模拟器上没有出现溢出按钮。模拟器是带有皮肤WSVGA的API 14
答案 0 :(得分:3)
This post in the Android Developers blog对从旧的菜单按钮到使用新的操作栏和操作溢出的设计转换进行了很好的讨论em> list。
它还包含一些有关如何在从前级11转换到新操作栏时处理代码的具体建议。可能对您有所帮助,但对于您的特定应用,您需要决定是否要显示操作栏。如果没有,那么您可能需要在游戏界面中添加一个按钮,该按钮会复制具有一个按钮的设备上的菜单按钮的功能。
答案 1 :(得分:2)
较新版本的Android确实有一个菜单按钮(请参阅下面的报价)。我认为你最好的选择就是隐藏动作栏,让你的游戏使用菜单按钮的方式与旧的Android版本相同。
引自Android 4.0 Compatibility Definition
7.2.3。导航键 Home,Menu和Back功能对Android导航范例至关重要。
设备实现必须在运行应用程序时始终为用户提供这些功能。
这些功能可以通过专用物理按钮(例如机械或电容式触摸按钮)或可以实现 使用专用软件密钥,手势,触摸面板等实现.Android 4.0支持两种实现。
和
设备实现必须在应用程序时显示菜单键 targetSdkVersion< = 10并且不应该出现菜单键 targetSdkVersion> 10。