1. 程式人生 > >android 5.0以上版本控制元件點選 水波紋效果

android 5.0以上版本控制元件點選 水波紋效果

android api21及以上引入了控制元件點選的水波紋效果

1.可以直接給控制元件設定

android:background="?android:attr/selectableItemBackground"(有邊界效果)
或者 
android:backgroundTint="?android:attr/selectableItemBackgroundBorderless”(無邊界效果)
2、設定selector
drawable中建立selector檔案,版本低於21時使用,例如:
<?xml version="1.0" encoding="utf-8"?>
<selector 
xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools"> <item android:drawable="@color/colorPrimaryDark" android:state_pressed="true" /> <item android:drawable="@color/colorPrimary" /> </selector>
res目錄下建立資料夾  drawable-v21 ,並建立xml檔案:
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/color_half_black"><!-- press和水波紋的顏色 --><item>
<!--item中可以自定義shape-->
<shapeandroid:innerRadius="5dp"android:shape="rectangle"> <solid
android:color="@color/colorPrimary" /> <corners android:radius="5dp" /> </shape> </item>
    <!--或者直接定義normal(未點選)狀態下的顏色-->
<!--<item android:drawable="@color/colorPrimary" />--></ripple>
是不是很簡單。