【问题标题】:PhoneGap 3.x Android - Native Popup/Dialog ThemePhoneGap 3.x Android - 原生弹出/对话框主题
【发布时间】:2013-11-04 10:58:16
【问题描述】:

我有一个在 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】:

    别担心 - 我自己修好了。对于那些想知道的人,在默认清单文件中设置了以下标记。默认情况下,这设置为:

    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 中指定的值。

    【讨论】:

    • 很高兴能帮上忙 ;)
    猜你喜欢
    • 1970-01-01
    • 2013-05-28
    • 2013-08-08
    • 1970-01-01
    • 2011-10-02
    • 2015-09-08
    • 1970-01-01
    • 2011-07-13
    • 1970-01-01
    相关资源
    最近更新 更多