根据API版本从android属性设置按钮的背景

时间:2016-10-18 12:51:48

标签: android

在我的应用中,我希望所有按钮都具有相同的背景。

适用于API 21及更新版?android:attr/selectableItemBackgroundBorderless

对于较旧的API ?android:attr/selectableItemBackground

如何在XML中设置按钮的背景,以便根据Android版本引用正确的drawable?

2 个答案:

答案 0 :(得分:4)

styles.xml文件夹中的res/values内创建应用主题:

<style name="AppTheme" parent="AppTheme">
    <item name="android:buttonStyle">?android:attr/selectableItemBackground</item>
</style>

styles.xml文件夹中的res/values-v21内创建应用主题:

<style name="AppTheme" parent="AppTheme">
    <item name="android:buttonStyle">?android:attr/selectableItemBackgroundBorderless</item>
</style>

AndroidManifest.xml

中将主题应用于应用程序
(...)
<application
    android:theme="@style/AppTheme">
(...)

答案 1 :(得分:0)

创建两种风格。参考:Creating styles-v21.xml

第一步后:设置ButtonStyle 参考:https://stackoverflow.com/a/14033420/7001152