我的Android应用支持返回API级别15并且目标是API级别21.对于一种样式,我想添加在v16中添加的属性,然后在v21中添加。除了在v21中复制v16属性之外,还有更好的方法吗?使用下面的代码,v21设备将不具有从v16样式应用的字体系列。
值/样式
<style name="message" parent="message_base" />
<style name="message_base">
<item name="android:layout_width">match_parent</item>
<item name="android:layout_height">wrap_content</item>
<item name="android:textColor">@color/primary</item>
<item name="android:textSize">36sp</item>
</style>
值-V16 /样式
<style name="message" parent="message_base">
<!-- Attribute introduced in v16 -->
<item name="android:fontFamily">sans-serif-thin</item>
</style>
值-V21 /样式
<style name="message" parent="message_base">
<!-- Attribute introduced in v21 -->
<item name="android:elevation">4dp</item>
</style>
布局/视图
...
<TextView
style="@style/message"
android:text="@string/my_message" />
...
我保持示例代码非常简单,但想象一下基本样式中使用的更多属性,以及可能必须重复的v16样式。