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