这两天在使用expandablelistview时,遇到自定义的childitem无法被点击的问题。
总结原因如下:
- isChildSelectable()返回false 。childitem要想响应监听事件,这个函数就必须返回true
- item的布局文件中,有控件(比如button)劫持了点击事件(ListView都存在这种情况)。此时,在布局文件中在相应的控件属性下添加 android:focusable=”false”,childitem就能被点击。
TextView是默认为不可聚焦
而像CheckBox, Button, EditText等默认是可聚焦的,如果包含在childitem layout内,而且还需要响应childitem的点击事件的话,那么必须全部设置为非聚焦。
全部设置为不可聚焦后,childitem就能被点击了