我的目标是api 14及以上。在/values/styles.xml中,我有这个:
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:windowBackground">@drawable/foo</item>
</style>
但对于api 16及以上版本,我想为windowBackground使用不同的drawable。
“AppTheme”条目现在设置了很多属性,我不想在v16文件夹中复制AppTheme。有没有办法抽象出windowBackground属性,如:
// /values/styles.xml
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:windowBackground">@myDefinition</item>
</style>
<drawable id="myDefinition">@drawable/foo1</drawable>
// /values-v14/styles.xml
<drawable id="myDefinition">@drawable/foo2</drawable>
这样我可以只在一个地方保留AppTheme?
由于
答案 0 :(得分:0)
您可以为drawable folder
或v-16
创建v-14
,因此当设备为api 16/14时,它会获取该文件夹并使用drawable
到{ {1}} xml。
Style
答案 1 :(得分:0)
使用drawable-v14/
似乎是更好的解决方案。
查看此其他StackOverflow question。这不是你的问题的重复,但似乎给出了正确的答案。