我的RecyclerView元素需要一个简单的涟漪效果,后者具有背景颜色设置。由于它们已经设置了背景颜色(蓝色),我无法将背景设置为drawable / ripple.xml:
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/color_view_pressed"> <!-- ripple color -->
<item android:drawable="@android:color/white"/>
<!-- normal color -->
所以我将ripple.xml更改为:
<ripple xmlns:android="http://schemas.android.com/apk/res/android"
android:color="@color/color_view_pressed"> <!-- ripple color -->
<item android:drawable="@android:color/blue"/>
<!-- normal color -->
它仍然不起作用。 :( 编辑: 显然,波纹颜色隐藏在背景颜色背后,因此几乎看不到它。但是人们可以在背景中看到它的一丝(如果我将color_view_pressed设置为深红色)。 有没有什么方法可以实现这一点,否则呢?我已经尝试了所有可能的解决方案。 不知何故,它与ListView完美配合。我不明白怎么回事。
答案 0 :(得分:4)
在用于项目的布局的根ViewGroup
中添加前景属性而不是背景(您已设置):
android:foreground="?android:attr/selectableItemBackground"
并设置这些属性:
android:clickable="true"
android:focusable="true"
这对我有用
答案 1 :(得分:1)
你可以拥有2个ViewGroup
个有背景的东西 - 涟漪的顶部一个,而且整个布局都是蓝色背景的孩子。