1. 程式人生 > >Android 實現所有View的點選水波紋效果

Android 實現所有View的點選水波紋效果

點選水波紋效果,是安卓5.0以上的一個新特技。

一開始,我只會在普通的Button上新增這個效果。

利用新建主題的方法:

<style name="MyButton" parent="Theme.AppCompat.Light">
    <item name="colorControlHighlight">@color/colorPrimary</item>
    <item name="colorButtonNormal">@color/mainTheme</item>
</style>

但是,為了讓介面更酷炫,我想讓所有的view都實現這個效果,該怎麼做呢?

查了一下資料,其實也很簡單。

首先,在drawable裡新建一個xml,根標籤,選擇ripple,注意,必須是v21 以上才可以這麼用,如果是21以下,需要複寫一個普通的selector做相容。

<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/qianHui">
    <item>
        <shape android:shape="rectangle">
            <solid android:color=
"#FFFFFF"/> <corners android:radius="4dp"/> </shape> </item> </ripple>
根標籤裡的color屬性,就是擴散出來的水波紋顏色。

然後,再在想要實現這個特技的View 上設定,於是就大功告成啦!~

android:background="@drawable/ripple_item_normal"