具有向后兼容性的Android Holo主题

时间:2012-05-23 08:47:51

标签: android backwards-compatibility

我已经构建了支持android:minSdkVersion="7" android:targetSdkVersion="15"的Android应用。我使用继承Android默认主题的自定义主题。

所以现在我想将整个应用程序主题更改为Holo主题。任何人都可以帮助我。

3 个答案:

答案 0 :(得分:10)

您可以使用不同的样式XML来实现“样式选择器”。

只需在/res/**values**/styles.xml中定义一个名为“StyleSelector”的主题或类似的主题:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="ThemeSelector" parent="@android:style/Theme.Black">
    ... Your theme definitions
    </style>
</resources>

然后创建/res/**values-v11**/styles.xml

<resources>
    <style name="ThemeSelector" parent="@android:style/Theme.Holo">
    </style>
</resources>

现在只需将您的主题应用于“@style/ThemeSelector”,让Android发挥神奇作用。 在较旧的Android版本上,您的主题定义将被加载,在具有Holo-Support的较新版本中,您的主题将来自Holo。

答案 1 :(得分:3)

尝试使用HoloEverywhere作为父主题。

答案 2 :(得分:1)

只需修改AndroidManifest.xml中包含主题的应用程序标记:

android:theme="@style/Theme.Holo"

例如:

<application android:icon="@drawable/ic_launcher"
             android:label="@string/app_name"
             android:theme="@style/Theme.Holo">

或者您可以基于每个活动进行此操作。以下是相关文档: https://developer.android.com/guide/topics/ui/themes.html

相关问题