转载请标明出处,谢谢。
这两天使用ExpandableListView过程遇到比较棘手的问题就是,子列无法效应点击事件OnChildClickListener。首先需
要说明的是我的child.xml是RelativeLayout布局包含有IageView、TextView和Button各一个,问题的根结就在这个
Button具有焦点,挡住了子项RelativeLayout获取点击事件。
网上很多关于该问题的回答在这里也重复下,防止各位看客的问题根源是多方面的。
原因1:
如图,adapter的isChildSelectable返回值未设置成true;
原因2(这个也是看到别人说的,不确定这是否有影响):在adapter的定义中未实现OnChildClickListener接口。
我的问题原因:Button具有焦点,挡住了子项RelativeLayout获取点击事件,解决办法:如下图,给child.xml中Button添加属性android:focusable="false"即可。
可能影响因素:在expandListview中注册点击事件
网上查询过程有其他一些影响因素,如果以上还不能解决你的问题可以一起讨论~