在Android 5.0中,单击列表项时,我的ListView会产生连锁反应。有没有办法禁用这种效果?查看文档,我看不出任何方式(https://developer.android.com/reference/android/widget/ListView.html)
答案 0 :(得分:31)
您可以使用android:listSelector
属性删除或替换列表选择器。材料下的默认列表选择器为?android:attr/selectableItemBackground
,这是一个有界纹波。
<ListView
...
android:listSelector="@drawable/my_list_selector" />
要完全禁用选择器,您可以使用@null
或@android:color/transparent
(适用于某些Android版本)值,如下所示:
<ListView
...
android:listSelector="@android:color/transparent" />
答案 1 :(得分:18)
尝试:
<ListView
...
android:listSelector="@android:color/transparent" />
这将禁用任何触摸的视觉效果。对用户来说不是很好,但在特殊情况下可能会有用。
答案 2 :(得分:0)
是的,您可以使用其布局创建自定义列表项,您必须使用不带纹波的可绘制更改android:background
。