3

ExpandableListViewの展開と折りたたみをアニメーション化しようとしています。私はAPIレベル15をターゲットにしているので、メソッドexpandGroupが利用可能です(int groupPos, boolean animate)。ただし、グループの拡大をアニメーション化するものではありません。私のコードは以下の通りです:

m_expandList.setOnGroupClickListener(new OnGroupClickListener(){
            public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id)
            {
                if(m_expandList.isGroupExpanded(groupPosition))
                {
                    m_expandList.collapseGroup(groupPosition);
                }
                else
                {
                    m_expandList.expandGroup(groupPosition,true);
                }
                return true; 
            }
        });

以下は、レイアウトからの抜粋です。

<ExpandableListView
    android:id="@+id/ExpList"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:layout_below="@id/MainLabel"   
    android:layout_above="@id/button1"     
    android:choiceMode="multipleChoice"/>

APIを正しく使用していない場合や、何かが足りない場合があると思いますか?

また、collapseGroupに同じメソッドがないのはなぜですか(つまり、animate boolも含まれています)?

前もって感謝します

4

2 に答える 2

3

少し遅れるかもしれませんが、グループの子が使用可能なスペースよりも高い高さのグループを展開すると、展開アニメーションがトリガーされます。

アニメーションは、実際には、子供の身長に合わせて下にスクロールするリストビューです。これが、折りたたみ時にアニメーションがない理由でもあります。

お役に立てれば。

于 2013-01-20T11:49:29.563 に答える
0

リスナーを削除します(グループの展開-折りたたみのためだけに使用している場合)。ExpandableListViewこれは、実際にアニメーション化されるデフォルトの動作です。

于 2012-08-31T15:39:14.217 に答える