PhoneGap 3.x Android - 原生弹出/对话主题

问题描述 投票:4回答:1

我在Android上运行的PhoneGap 3.1项目工作正常 - 使用Android API lvl编译。 19.但是,原生对话框/警报使用的是Froyo / Android 2.x外观,而我希望它们使用ICS / Android 4.x外观。在我的旧版本中,我确实通过更新AndroidManifest.xml中的targetSDKVersion来设法使用ICS获取对话框主题。但是,这在我的3.1项目中没有用。

这是他们在运行PhoneGap 2.5的应用程序版本中的一个示例:

这是他们在我的运行PhoneGap 3.1的应用程序中的外观示例:

我相信这不是一个PhoneGap问题,而是更多Android Eclipse项目设置。但我不知道我需要改变什么才能解决这个问题?有人可以建议吗?谢谢!

android cordova themes look-and-feel android-theme
1个回答
17
投票

别担心 - 自己修理一下。对于想要了解的人,默认清单文件中设置了以下标记。默认情况下,此设置为:

android:theme="Theme.Black.NoTitleBar"

将其更改为以下修复它:

android:theme="Theme.DeviceDefault"

我觉得很简单:)。

更新

从org.apache.cordova.dialog v2.9.0开始,Cordova项目的人员将Android源代码更改为包含硬编码值的默认主题值,如下所示:

new AlertDialog.Builder(cordova.getActivity(), AlertDialog.THEME_DEVICE_DEFAULT_LIGHT);

这很令人沮丧,但您可以注释掉这一行并将其替换为:

new AlertDialog.Builder(cordova.getActivity());

要恢复以前的行为,并让Cordova使用AndroidManifest.xml中指定的值。

© www.soinside.com 2019 - 2024. All rights reserved.