Android 包含水波纹效果的圆角Button

drawable文件夹下新建文件button_ripple.xml,添加如下内容


<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做兼容方案

你可能感兴趣的:(Android)