天天看點

android 水波紋效果

水波紋效果是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中寫該控件的點選事件的事件監聽才可以,可以不用處理邏輯也是可以的。

繼續閱讀