以下代码
<TextView
android:id="@+id/lblListHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="?android:attr/expandableListPreferredItemPaddingLeft"
android:paddingRight="20dp"
android:textSize="18sp"
android:singleLine="true" />
<TextView
android:id="@+id/lblListDesc"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="?android:attr/expandableListPreferredItemPaddingLeft"
android:paddingTop="25dp"
android:textSize="12sp"
android:text="This is Desc" />
程序setOnGroupClickListener工作
expListView.setOnGroupClickListener(new OnGroupClickListener() {
@Override
public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) {
Toast.makeText(getApplicationContext(), "Group Clicked " + listDataHeader.get(groupPosition), Toast.LENGTH_SHORT).show();
return true;
}
});
但是,如果你添加一个按钮
<TextView
android:id="@+id/lblListHeader"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="?android:attr/expandableListPreferredItemPaddingLeft"
android:paddingRight="20dp"
android:textSize="18sp"
android:singleLine="true" />
<Button
android:id="@+id/iconShowParamGroup"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:background="@drawable/ic_launcher"
android:onClick="showParamGroup" />
<TextView
android:id="@+id/lblListDesc"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingLeft="?android:attr/expandableListPreferredItemPaddingLeft"
android:paddingTop="25dp"
android:textSize="12sp"
android:text="This is Desc" />
该过程setOnGroupClickListener不起作用。 因此产生以下内容不得披露。 你能指出我的错误吗?
谢谢!
答案 0 :(得分:2)
看起来像你添加到项目中的Button获得了项目焦点和onClick事件,只需将Button focusable设置为false。检查一下:
<Button
android:id="@+id/iconShowParamGroup"
android:layout_width="40dp"
android:layout_height="40dp"
android:layout_alignParentRight="true"
android:background="@drawable/ic_launcher"
android:focusable="false"
android:onClick="showParamGroup" />
希望这有帮助。
答案 1 :(得分:0)
您必须在 ExpandableListView 中包含参数android:descendantFocusability="blocksDescendants"
:
<ExpandableListView
android:id="@+id/treatments_expandable_list"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:descendantFocusability="blocksDescendants"
android:groupIndicator="@null"/>