水波紋效果是android 5.0以後添加的效果,效果炫酷
使用方法
<TextView
android:id="@+id/tev_open_now"
android:layout_width="130dp"
android:layout_height="36dp"
android:layout_marginTop="32dp"
android:background="@drawable/ripple_foreground"
android:layout_gravity="center_horizontal"
android:textColor="@color/white"
android:textSize="15sp"
android:text="@string/open_shop_now"
android:gravity="center"/>
ripple_foreground資源檔案
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="#000000">
<!--上面的color="#000000"為點選的水波紋的顔色-->
<!--下面的這個形狀是點選之前的形狀-->
<item>
<shape android:shape="rectangle">
<!-- 填充顔色 -->
<solid android:color="@color/app_main_color" />
<!-- 線的寬度,顔色灰色 -->
<stroke
android:width="@dimen/line_one"
android:color="@color/app_main_color" />
<!-- 矩形的圓角半徑 -->
<corners android:topLeftRadius="45dp"
android:topRightRadius="45dp"
android:bottomLeftRadius="45dp"
android:bottomRightRadius="45dp"/>
</shape>
</item>
</ripple>
因為這是5.0以後的效果是以要建立drawable-v21的檔案夾,把上面的資源檔案放入其中
這是我們還要寫一個相同名稱的資源檔案放入到drawable檔案夾下,這是防止5.0以下報錯
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<!-- 實心 -->
<solid android:color="@color/app_main_color" />
<!-- 指定圓角矩形的4個圓角的半徑 -->
<corners android:radius="45dp" />
<stroke
android:width="@dimen/line_two"
android:color="@color/app_main_color" />
</shape>
這樣就可以實作水波紋效果
注意:以上設定時button可以實作效果,但是如果給其他控件使用時應在activity或fragment中寫該控件的點選事件的事件監聽才可以,可以不用處理邏輯也是可以的。