1.背景选择器(位于res/drawable/,使用方法:android:background="@drawable/button_selector") button_selector.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="true"
android:drawable="@drawable/shape_pressed"/>
<item
android:state_pressed="false"
android:drawable="@drawable/shape_normal"/>
</selector>
shape_normal.xml
<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<!-- 填充的颜色:这里设置背景透明 -->
<solid android:color="@android:color/transparent" />
<!-- 边框的颜色 :不能和窗口背景色一样-->
<stroke
android:width="1dp"
android:color="#ffffff" />
<!-- 设置按钮的四个角为弧形 android:radius 弧形的半径-->
<corners android:radius="10dip" />
<!-- padding:Button里面的文字与Button边界的间隔 -->
<padding
android:bottom="10dp"
android:left="40dp"
android:right="40dp"
android:top="10dp" />
</shape>
shape_pressed.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 填充的颜色:这里设置背景透明 -->
<solid android:color="@android:color/transparent" />
<!-- 边框的颜色 :不能和窗口背景色一样-->
<stroke
android:width="1dp"
android:color="#FF7F00" />
<!-- 设置按钮的四个角为弧形 android:radius 弧形的半径-->
<corners android:radius="10dip" />
<!-- padding:Button里面的文字与Button边界的间隔 -->
<padding
android:bottom="10dp"
android:left="40dp"
android:right="40dp"
android:top="10dp" />
</shape>
2.文字颜色选择器(位于res/color/,使用方法: android:textColor="@drawable/text_selector") text_selector.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="#FF7F00" android:state_pressed="true"/>
<item android:color="#ffffff"/>
</selector>
来源:oschina
链接:https://my.oschina.net/u/2300503/blog/707505