Android的水波纹效果只有高版本才有,我们希望自己的应用在低版本用低版本的阴影,高版本用水波纹,这怎么做呢?其实,只要分drawable和drawablev21两个文件夹就好了。
普通情况下的selector:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@color/menu_selected" android:state_pressed="true" />
<item android:drawable="@android:color/transparent" />
</selector>
v21中的selector:
<?xml version="1.0" encoding="utf-8"?>
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/menu_selected"
><!-- 按压的颜色 -->
<!-- 底部背景的drawable/color/bitmap -->
<!--<item android:drawable="@color/red" />-->
</ripple>
这里ripple中的color就是按下的水波纹颜色,在里面加入一个item,这个item就会变成背景。注意,不要添加透明的item做背景,其一是没有意义,第二会出现无法显示按压效果的问题。
参考自:
http://www.tuicool.com/articles/NFr6jie