我有一个应用程序,我想提供一个明亮和黑暗的主题。
例如:
<style name="AppTheme.Light" parent="@android:style/Theme.Holo.Light">
...
</style>
<style name="AppTheme.Dark" parent="@android:style/Theme.Holo.Dark">
...
</style>
我还有一个自定义样式,指定要应用于使用它的任何内容的背景:
<style name="MyCustomViewBackground">
<item name="android:background">@drawable/half_alpha_white_rounded_background</item>
</style>
我如何安排MyCustomViewBackground样式指定AppTheme.Light样式的一个背景(half_alpha_white_rounded_background),以及AppTheme.Dark样式的不同背景(half_alpha_dark_rounded_background)?
答案 0 :(得分:2)
这应该有效(没有测试):
attrs.xml
<resources>
<attr name="customViewBackground" format="reference" />
</resources>
styles.xml
<style name="MyCustomViewBackground">
...
<item name="android:background">?attr/customViewBackground</item>
...
</style>
的themes.xml
<style name="AppTheme.Light" parent="@android:style/Theme.Holo.Light">
...
<item name="customViewBackground">@drawable/half_alpha_white_rounded_background</item>
...
</style>
<style name="AppTheme.Dark" parent="@android:style/Theme.Holo.Dark">
...
<item name="customViewBackground">@drawable/half_alpha_dark_rounded_background</item>
...
</style>