定义一个普通圆角背景的xml;
rounded_corners.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" />
<corners android:radius="4dp" />
</shape>
实现水波纹效果的(21以上才支持):
新建文件夹drawable-v21
ripple_bg.xml:
<?xml version="1.0" encoding="utf-8"?><!-- android 5.0才正常 其中<ripple android:color="#FF21272B" .... />这个是指定水波纹的颜色.-->
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="#FFf2f2f2">
<item>
<shape android:shape="rectangle">
<solid android:color="@color/white" />
<corners android:radius="4dp" />
</shape>
</item>
<item android:drawable="@drawable/rounded_corners" />
</ripple>
21以下的版本,不支持,为了预防出错,建立ripple_bg.xml在默认的drawable下面:
<?xml version="1.0" encoding="utf-8"?><!--设置按钮点击时,点击后,按钮这2种状态的改变和设置-->
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!--按钮按下时的设置 -->
<item android:drawable="@color/gray_2" android:state_pressed="true"></item>
<!--按钮松开时的设置 -->
<item android:drawable="@color/white" android:state_pressed="false"></item>
</selector>
剩下的,就是用了:
android:background="@drawable/ripple_bg"
android:clickable="true"
android:focusable="true"