思路:使用selector改變Button點擊時和非點擊時的背景,實現點擊按鈕改變顏色的觸摸反饋。
1、在drawable中新建兩個xml文件,使用shape定義背景。
shape_normal.xml和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="#FFFFFF" /> <stroke android:width="1dip" android:color="#3F3F3F"/> <!-- 圓角 --> <corners android:radius="10dp" /> <!-- 邊距 --> <padding android:bottom="5dp" android:left="5dp" android:right="5dp" android:top="5dp" /> </shape>
2、在drawable中新建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>
使用item中的android:state_pressed屬性指定點擊時和非點擊時使用的效果文件。
3、在Button中添加android:background="@drawable/button_selector"屬性
三步便完成了實現點擊按鈕改變顏色的觸摸反饋。