具有向后兼容性的Android Holo主题
我已经构建了支持android:minSdkVersion=“7”具有向后兼容性的Android Holo主题,android,backwards-compatibility,Android,Backwards Compatibility,我已经构建了支持android:minSdkVersion=“7”android:targetSdkVersion=“15”的android应用程序。我使用我的自定义主题继承Android默认主题 现在我想将整个应用程序主题更改为Holo主题。有人能帮我吗。只需修改AndroidManifest.xml中包含主题的应用程序标记即可: android:theme="@style/Theme.Holo" 例如: <application android:icon="@drawable/ic_
android:targetSdkVersion=“15”
的android应用程序。我使用我的自定义主题继承Android默认主题
现在我想将整个应用程序主题更改为Holo主题。有人能帮我吗。只需修改AndroidManifest.xml中包含主题的应用程序标记即可:
android:theme="@style/Theme.Holo"
例如:
<application android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/Theme.Holo">
您可以通过使用不同样式的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>
<resources>
<style name="ThemeSelector" parent="@android:style/Theme.Holo">
</style>
</resources>
现在只需使用“@style/ThemeSelector
”应用你的主题,让Android发挥神奇的作用。
在较旧的Android版本上,将加载您的主题定义,在支持Holo的较新版本上,您的主题将从Holo派生。尝试用作父主题。您的意思是希望在运行时以编程方式更改此定义?预蜂窝设备呢?你想让他们也有全息主题吗?然后你需要像Holo这样的东西。到HoloEverywhere的链接现在是:我尝试了这个方法,但它给出了错误:错误:没有找到与给定名称匹配的资源(在'theme'处,值为'@style/theme.Holo')。这是否发生在蜂巢之前的设备上?如果是,您是否添加了Holoeverywhere库?当使用Holoeverywhere时,您必须使用“@style/Theme.HoloEverywhereDark”,这不是运行时错误。此错误来自eclipse。因此我无法构建项目。我将尝试HoloEverywhere主题。感谢您的帮助。尽管android文档提供了相同的信息,但我在eclipse中得到了一个错误,即使在值中指定了theme.Black。我到处都找了,但似乎没有解决办法。我也不想使用任何像HoloEveryWhere这样的第三方库。那么为什么不使用@android:style/Theme呢?