Android 为一个主题提取不同OS版本的绘图?
我的目标是api 14及以上版本。在/values/styles.xml中,我有以下内容:Android 为一个主题提取不同OS版本的绘图?,android,Android,我的目标是api 14及以上版本。在/values/styles.xml中,我有以下内容: <style name="AppTheme" parent="AppBaseTheme"> <item name="android:windowBackground">@drawable/foo</item> </style> @可提取的/foo 但是对于API16和更高版本,我想为windowBackground使用不同的drawable “
<style name="AppTheme" parent="AppBaseTheme">
<item name="android:windowBackground">@drawable/foo</item>
</style>
@可提取的/foo
但是对于API16和更高版本,我想为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>
///values/styles.xml
@我的定义
@可抽出式/foo1
///values-v14/styles.xml
@可抽出式/foo2
这样我就可以只在一个地方定义AppTheme了
谢谢您可以为
v-16
或v-14
创建一个drawable文件夹
,因此当设备为api 16/14时,它将抓取该文件夹并将您的drawable
用于样式
xml
drawable-xhdpi-v16
使用
drawable-v14/
似乎是一个更好的解决方案
看看这个。这不是重复你的问题,但似乎给出了正确的答案 好的,但是我不需要一个文件夹来存放所有的密度吗?它会起作用,但希望安卓能提供一个更优雅的平台solution@user3203425不,除了声明接受指定API级别的文件夹之外,没有其他解决方案