安卓按钮点击变颜色,实现点击有反馈效果

思路:使用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"属性


三步便完成了实现点击按钮改变颜色的触摸反馈。
posted @ 2019-04-02 16:55  知亦行  阅读(8161)  评论(0编辑  收藏  举报