📅  最后修改于: 2023-12-03 15:25:54.829000             🧑  作者: Mango
XML 是一种用于定义各种类型数据的标记语言,这里我们通过使用XML来定义按钮颜色主题,为程序员提供了一种方便、易于维护的方式添加和修改颜色主题。以下是一些常见的 XML 按钮颜色主题示例:
普通按钮通常具有默认状态和点击状态两种状态,以下是一种基本的 XML 按钮主题:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 默认 -->
<item android:state_pressed="false" android:state_enabled="true"
android:drawable="@drawable/btn_normal" />
<!-- 点击时 -->
<item android:state_pressed="true" android:state_enabled="true"
android:drawable="@drawable/btn_pressed" />
<!-- 不可用 -->
<item android:state_enabled="false" android:drawable="@drawable/btn_disable" />
</selector>
<selector>
: 定义了一组不同状态下的按钮样式android:state_pressed
: 按钮被点击的状态android:state_enabled
: 按钮是否可用的状态android:drawable
: 定义该状态下按钮的样式线性渐变按钮具有渐变的特点,常用于高亮按钮和主题按钮,以下是一个基本的 XML 线性渐变按钮主题:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- 默认 -->
<item>
<shape>
<gradient android:startColor="#CCCCCC"
android:endColor="#999999"
android:angle="270" />
<stroke android:width="1dp" android:color="#999999" />
<corners android:radius="5dp" />
<padding android:left="5dp" android:top="5dp"
android:right="5dp" android:bottom="5dp" />
</shape>
</item>
<!-- 点击时 -->
<item android:state_pressed="true">
<shape>
<gradient android:startColor="#999999"
android:endColor="#CCCCCC"
android:angle="270" />
<stroke android:width="1dp" android:color="#CCCCCC" />
<corners android:radius="5dp" />
<padding android:left="5dp" android:top="5dp"
android:right="5dp" android:bottom="5dp" />
</shape>
</item>
</selector>
<shape>
: 定义了按钮的形状和边框<gradient>
: 定义渐变色<stroke>
: 定义边框<corners>
: 定义圆角<padding>
: 定义内边距圆形按钮是一种简单的按钮样式,以下是一个基本的 XML 圆形按钮主题:
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<!-- 默认 -->
<solid android:color="#CCCCCC" />
<stroke android:width="1dp" android:color="#999999" />
<size android:width="50dp" android:height="50dp" />
<!-- 点击时 -->
<corners android:radius="5dp" />
<padding android:left="5dp" android:top="5dp"
android:right="5dp" android:bottom="5dp" />
<item android:state_pressed="true">
<shape>
<solid android:color="#999999" />
</shape>
</item>
</shape>
android:shape="oval"
: 定义圆形形状<solid>
: 定义填充颜色<stroke>
: 定义边框<size>
: 定义按钮的大小<corners>
: 定义圆角<padding>
: 定义内边距<item>
: 定义按钮状态,这里定义了点击状态的颜色以上就是针对按钮颜色主题的介绍,XML 作为一种灵活的标记语言,可以帮助程序员实现更多的颜色主题集合。如果需要完成更专业、更特殊的的按钮颜色,开发者可以根据自己的需求扩展和修改 XML 代码。