效果如下(红框内即是):点击按钮有水波纹效果
如上,分别是四个按钮。在布局文件中,以第一个按钮为例:
<Button
android:id="@+id/bt1"
android:layout_width="140dp"
android:layout_height="120dp"
android:drawableTop="@drawable/one"
android:background="@drawable/btn_left_top"
android:text="我的日程"
android:textColor="#fff"
android:textSize="14dp"
android:paddingTop="15dp"
/>
android:drawableTop="@drawable/one"是按钮中那张圆形图片
android:background="@drawable/btn_left_top"是在drawable里面建的一个xml文件,如下:
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="#fff">
<item>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<solid android:color="#90EE90" />
<corners
android:bottomLeftRadius="60dp"
android:topRightRadius="60dp" />
<stroke
android:width="1dp"
android:color="#fff" />
<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp" />
</shape>
</item>
</ripple>
注:android:color="#fff">是点击按钮之后水波纹显示的颜色
<solid android:color="#90EE90" />是按钮填充的颜色
<corners android:bottomLeftRadius="60dp" android:topRightRadius="60dp" />设置按钮左下角和右下角的边框,四个按钮边框角度不同就是在这里设计的
<stroke android:width="1dp" android:color="#fff" />设置描边大小以及颜色
<padding android:bottom="10dp" android:left="10dp" android:right="10dp" android:top="10dp" />padding设置Button里面的文字与Button边界的间隔