我正在使用Holo.Light.Dialog
主题进行我的一项活动。出于某种原因,当在带有屏幕键的ICS手机上运行时,它会给我一个软菜单键。这个键什么也没做,我没有菜单,我似乎无法摆脱它。奇怪的是,在ICS平板电脑上(相同的设置,只是一个更大的屏幕)我没有得到软件菜单键。
我尝试使用Holo.Light.Dialog.NoActionBar(.MinWidth)
,认为我获取菜单键的原因是对话框没有标题栏,而应用程序假设我仍然想要一个菜单键。我希望告诉它我不想要一个动作栏来修复它,但这似乎没有帮助。
关于如何强迫它消失的任何想法?
活动XML:
<activity android:label="@string/login"
android:name=".login"
android:excludeFromRecents="false"
android:screenOrientation="unspecified"
android:windowSoftInputMode="adjustResize|adjustPan"
android:theme="@android:style/Theme.Holo.Light.Dialog"/>`
编辑:为了进一步说明,我的MinSDK是11,而targetSDK是14.两者都应该允许它不使用菜单按钮。
答案 0 :(得分:1)
确保&lt; uses-sdk android:minSdkVersion =“11”android:targetSdkVersion =“14”/&gt;元素出现在&lt; application&gt;之前你的清单中的元素。
答案 1 :(得分:1)
我认为你需要在你的全息主题中设置动作栏。在你的例子中,你有Theme.Holo.Light。对话,你说你没有动作栏就做了一个不同的主题。尝试简单的Theme.Holo.Light。
来自android开发博客,"Say goodbye to the menu button"
如果将minSdkVersion或targetSdkVersion设置为11或更高,则 系统不会添加旧版溢出按钮。否则,
系统将在Android上运行时添加旧版溢出按钮 3.0或更高。 唯一的例外是,如果将minSdkVersion设置为10或更低,请将targetSdkVersion设置为11,12或13,而不是 使用ActionBar,系统将在添加旧溢出按钮时 在Android 4.0或更高版本的手机上运行您的应用。
这是你正在描述的事情。
答案 2 :(得分:0)
尝试此操作:删除R.menu文件中存在的菜单项。