安卓app按钮点击变颜色,实现点击有反馈效果
思路:使用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"属性
三步便完成了实现点击按钮改变颜色的触摸反馈。