Android使用ListView时item失效解决方案

时间:2021-07-31 19:46:04

在使用ListView时候有时候会遇到item点击事件没响应。
原因很简单,你的item中又Button,Checkbox,ImageButton之类的控件,导致ListView.setOnItemClickListener无效,主要原因是这些试图获取了焦点导致item无法获取焦点,所以有如下三种方法:
1)在item布局文件里面的设置,让Button,Checkbox,ImageButton视图无法获得焦点
android:focusable="false"
android:clickable="false"
android:focusableInTouchMode="false"

2)但是很多童鞋又希望Button能够点击,那么你可以把Button换成ImageView,效果是一样的,同样可以实现点击效果。
3)如果有的小伙伴不愿意改item,那么还有一种办法就是在item中再嵌套一层布局,给这个布局设置点击监听,看上去的效果和对item点击效果是一样的,只不过点击是在适配器里面对item的布局做的监听。