drawable文件夹下新建文件button_ripple.xml,添加如下内容
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="?attr/colorControlHighlight">
<item>
<selector>
<item android:state_enabled="true">
<shape>
<corners android:radius="10dp" />
<solid android:color="@color/colorAccent" />
</shape>
</item>
<item android:state_enabled="false">
<shape>
<corners android:radius="10dp" />
<solid android:color="#ffcccccc" />
</shape>
</item>
</selector>
</item>
</ripple>
ripple标签用于定义水波纹效果,?attr/colorControlHighlight
是系统预定义的水波纹颜色
内部shape标签用于定义按钮属性,corners用于定义圆角半径,solid用于定义颜色
select标签内两个item分别对应按钮enable=true和enable=false的情况
在Button中引用
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/button_ripple" />
注意:5.0以下系统不能使用水波纹效果,使用selector做兼容方案