ExpandableListViewを使用しようとしていますが、グループ ビューにはテキストビューとチェックボックスが必要です (チェックボックスは右側にあります)。私が見ている問題は、groupIndicator ビューがタップ可能ではなくなったことです。それをタップしても、グループが展開されなくなりました。チェックボックスを削除すると、groupIndicator がイベントを受け取り、グループが展開可能になります。EditText など、何らかのフォーカスを受け取る別のビューでも同じことが起こります。ExpandableListView を含むフラグメントのレイアウトは次のとおりです。
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >
<ExpandableListView
android:id="@+id/categoryList"
android:layout_width="match_parent"
android:layout_height="match_parent" >
</ExpandableListView>
</RelativeLayout>
グループのレイアウト:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/white_background"
android:orientation="horizontal" >
<TextView
android:id="@+id/txtCategoryGroup"
android:layout_width="0dip"
android:layout_height="@dimen/items_filter_group_height"
android:layout_marginLeft="45dp"
android:layout_marginRight="20dp"
android:layout_weight="1"
android:gravity="center_vertical|left"
android:textIsSelectable="false" />
<!--
<CheckBox
android:id="@+id/cbGroup"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</CheckBox>
-->
</LinearLayout>
...そして、あなたが役に立つと思うなら、子のレイアウト:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="@dimen/items_filter_child_height"
android:background="@color/white_background"
android:orientation="horizontal" >
<CheckBox
android:id="@+id/cbProperty"
android:layout_width="wrap_content"
android:layout_height="wrap_content" >
</CheckBox>
</LinearLayout>
添付は、CheckBox のコメントが解除されている場合に得られるレイアウトです。
赤くマークされた groupIndicator をタップしても、グループは展開されません。コメントのままにしておくと、展開されます。上で述べたように: 奇妙なのは、EditText でも同じことが起こるということです。
回避策は、groupIndicator を @null に設定し、TextView のコンパウンド left drawable を、 ExpandableListView#OnGroupCollapseListenerおよび#OnGroupExpandListenerに応じて関連するものに設定することですが、私はそのようなコードを書くことに満足していません。
ありがとう!