不同的 styles.xml 对应不同的 api
Different styles.xml for different api's
我的应用程序中有以下 styles.xml
来加载 progressspinner:
<style name="MyProgressBarSpinner" parent="@style/Widget.AppCompat.ProgressBar">
<item name="android:indeterminateDrawable">@drawable/progressspinner</item>
<item name="android:minHeight">80dp</item>
<item name="android:minWidth">80dp</item>
</style>
不幸的是,我需要为 Android-versions < 23 加载另一个 progressspinner。因此我将 values-v16
添加到包含 styles.xml
的 values-v22
文件夹,如下所示:
<resources>
<style name="MyProgressBarSpinner" parent="@style/Widget.AppCompat.ProgressBar">
<item name="android:indeterminateDrawable">@drawable/progressspinnerv19</item>
<item name="android:minHeight">80dp</item>
<item name="android:minWidth">80dp</item>
</style>
</resources>
但现在当我使用 android > 23 启动应用程序时,它也使用 progressspinnerv19
而不是主要 styles.xml.
我做错了什么?
values-vXX 文件夹的语义是您放在那里的内容将在版本 XX 和以上 中使用。这就是为什么您也在 android > 23 上看到该内容。
原始 styles.xml 中的内容将用于以前的 API 版本。
我的应用程序中有以下 styles.xml
来加载 progressspinner:
<style name="MyProgressBarSpinner" parent="@style/Widget.AppCompat.ProgressBar">
<item name="android:indeterminateDrawable">@drawable/progressspinner</item>
<item name="android:minHeight">80dp</item>
<item name="android:minWidth">80dp</item>
</style>
不幸的是,我需要为 Android-versions < 23 加载另一个 progressspinner。因此我将 values-v16
添加到包含 styles.xml
的 values-v22
文件夹,如下所示:
<resources>
<style name="MyProgressBarSpinner" parent="@style/Widget.AppCompat.ProgressBar">
<item name="android:indeterminateDrawable">@drawable/progressspinnerv19</item>
<item name="android:minHeight">80dp</item>
<item name="android:minWidth">80dp</item>
</style>
</resources>
但现在当我使用 android > 23 启动应用程序时,它也使用 progressspinnerv19
而不是主要 styles.xml.
我做错了什么?
values-vXX 文件夹的语义是您放在那里的内容将在版本 XX 和以上 中使用。这就是为什么您也在 android > 23 上看到该内容。
原始 styles.xml 中的内容将用于以前的 API 版本。