×

解决点击ripple水波纹无效的问题

96
Jafir
2016.04.19 16:29* 字数 293

最近在研究MD风格,然后自己也着手开始准备做一个相关风格的APP

在水波纹研究的时候发现一个问题:

设置了background为自定义的ripple xml 但是却始终没有效果,对textview控件和linear layout、relative等容器无效

解决方法:在他们身上加上android:clickable = true


PS:

在研究ripple时候,发现一个问题。

要么你就默认使用 ?android:attr/selectableItemBackground 作为默认点击ripple,默认颜色是灰色,就跟button那个颜色差不多,不是colorAccent所对应的颜色,大家都知道colorAccent一般就是用来突出一些东西的亮色,比如checkbox的checked之后的颜色,seeker的那个点的颜色,一般都是会用高亮色

如果需要使用对应的高亮色来作为ripple的背景色,那么就需要在styles-v21里面加这个加入

<item name = "android:colorControlHighlight">@color/colorAccent</item>

如果要自定义的话,那么就需要在drawble-v21里面写一个以ripple为根节点的标签来实现自定义ripple颜色和背景

Android
Web note ad 1