1

これは、子要素の onclick リスナーです。

 getExpandableListView().setOnChildClickListener(new ExpandableListView.OnChildClickListener() {

        @Override
        public boolean onChildClick(ExpandableListView parent, View v,
                int groupPosition, int childPosition, long id) {
            // TODO Auto-generated method stub
            onChild_Click(parent,v,
                groupPosition,childPosition, id);
            return true;
        }
    });

子要素をクリックすると機能します。ここで、最初の子をデフォルトとして選択する必要があります( onCreate() メソッド内)。グループを拡大するために、私はこれを使用しています。

 getExpandableListView().expandGroup(0);

私は子要素に対してこれらのことを試しましたが、onclickイベントを発生させていません.しかし、子をクリックすると機能しています.

 getExpandableListView().setItemChecked(1, true);

 getExpandableListView().setSelectedChild(0, 0, true);
4

1 に答える 1

0

まず、expandableListView の選択モードを single に設定する必要があります。

expListView.setChoiceMode(ListView.CHOICE_MODE_SINGLE);
expListView.setItemChecked(numberOfChildToCheck+numberOfGroupThatIsOpened+1, true);

適切に機能させたい場合は、他のグループを開いたときに折りたたむ必要があります。次に、セレクターを使用するように expListView の子の背景ドローアブルを設定する必要があります。

背景用の xml ファイルは次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android" android:exitFadeDuration="@android:integer/config_shortAnimTime">


    <item android:drawable="@drawable/selected_backgroun" android:state_activated="true"/>
    <item android:drawable="@drawable/simple_background"/>

</selector>

子アイテムのビューとして設定するために膨張するレイアウトがあります。設定する必要があります

android:background="@drawable/name_of_your_xml_file_with_selector

よくわからない場合は、質問してください。次のような画像でお見せします。 ここに画像の説明を入力 ありがとうございます。

于 2013-05-14T09:43:12.370 に答える