我无法知道为什么我onChildClick
的{{1}}无法正常工作的原因。
但onGroupClick可以正常工作。
这是我所拥有的
ExpandableListView
我见过很多人遇到这个问题,但没有人有确凿的答案。
增加:
fileExpandableList.setOnGroupClickListener(this);
fileExpandableList
.setOnChildClickListener(new ExpandableListView.OnChildClickListener() {
@Override
public boolean onChildClick(ExpandableListView parent,
View v, int groupPosition, int childPosition,
long id) {
System.out.println("Child CLICKED.");
return false;
}
});
列表视图xml:
@Override
public boolean isChildSelectable(int groupPosition, int childPosition) {
return true;
}
子行xml
...
<ExpandableListView
android:id="@android:id/list"
android:drawSelectorOnTop="false"
android:groupIndicator="@drawable/group_indicator"
style="@style/allWrapper" >
</ExpandableListView>
</FrameLayout>
myOnClick事件处理程序
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/expandablelist_childrow"
style="@style/allmenu" >
<com.abc.xyz.android.view.TypeModuleView
android:id="@+id/expandablelist_childview"
android:longClickable="true"
android:onClick="myOnClick"
style="@style/module" >
</com.abc.xyz.android.view.TypeModuleView>
答案 0 :(得分:4)
尝试将isChildSelectable()的返回值设为True
答案 1 :(得分:0)
onClick属性(为什么还要把它放在哪里?)和onChildClickListener之间存在冲突。
onClick捕获TypeModuleView上的click事件。 LinearLayout没有收到它,也没有点击孩子。