如果ListView的一行布局中包含有Button、CheckBox等可以获得点击事件的控件,在不处理的情况下,Button、CheckBox会默认获取焦点,使ListView的OnItemClick方法失效。
解决方法:
1.将具有点击事件控件的android:focusable属性置成false,(如这里就是按钮的控件,只要把按钮的控件的android:focusable属性置成false);这样可以既捕捉onItemClick事件(在非button区域),又可以捕捉onClick等事件。
2.让button失去焦点,设置android:focusable="false",在item xml文件的根布局设置android:descendantFocusability="blocksDescendants"
以上内容来自网络,经过个人整理