2

有没有办法完全删除 XE5 Delphi 中的 Android 选项菜单?我一直在 HTC One 上测试我的应用程序,因为我的手机没有菜单按钮,而且我的应用程序没有选项按钮,android 会自动添加一个选项菜单。由于此按钮是由 Android 添加的,因此无法将项目添加到菜单中。

我已经尝试更改最小 SDK 版本,但这会使应用程序非常不稳定,并且在更改方向时会崩溃:

<uses-sdk android:minSdkVersion="14" />

还有其他方法可以删除选项菜单吗?现在我的屏幕底部只有一个没有菜单项的大选项菜单。

4

2 回答 2

1

好的,您是对的,因为您缺少硬件菜单按钮,所以添加了这个空的操作溢出菜单。

在 Nexus 7 上,这不是问题,因为在其他软按钮的末尾添加了空的溢出菜单。

但是,在 HTC One 上,您可以将主页按钮配置为菜单按钮,从而移除操作溢出按钮。

说您不能将项目添加到菜单中是不正确的。我在 CodeRage 8 上的 Android 会话展示了如何添加菜单项。但是,我承认,这有点小题大做。

为了删除它,文档说您应该将Android 清单中的 targetSdkVersion 属性(而不是 minSdkVersion)设置为 14(有关详细信息,请参阅此博客文章)。但是,如果您在 XE5 的 RTM 版本中不阻止旋转,则在尝试此操作后会导致崩溃,正如您在测试中看到的那样。这个问题在 QC 中,几周前记录,希望在不久的将来得到修复。

但是,您应该考虑将限制轮换作为一种行动方案……这很容易。

于 2013-10-09T13:23:58.907 回答
0

您必须将清单 android:configChanges="orientation|keyboardHidden"> 更改为: android:configChanges="orientation|keyboardHidden|screenSize">

然后你可以根据需要设置minsdk、maxsdk、targetsdk,应用程序不会崩溃

于 2014-11-21T20:31:17.353 回答