0

カテゴリの展開可能なリストビューを持つアクティビティを作成しました。それらの一部はサブカテゴリとして表示されます。それらはすべてチェック可能である必要があります。私はサブカテゴリ、checkedTextViewに使用しました。カテゴリには、textViewとチェックボックスを使用しました。これは、カテゴリ名をクリックすると、それを展開する必要があるためです(結局、展開可能なリストビューです!)。選択のために、リストビューは「複数選択モード」にあります。チェックされた項目のリストとしてのアダプター、およびgetchild / getgroup view()で、チェックボックス(またはcheckedtextview)を(リストビューの)sparsebooleanarrayによって指定された状態に設定しました。チェックボックスごとに私はします:

holder.checkbox.setOnCheckedChangeListener(new checkListener(groupPosition));

したがって、チェックボックスをオンにすると、リストビューのどの位置にあるかがわかります。

しかし、私はその実装に多くの問題を抱えています(与えられた位置が良くないなど)。フラットリストの位置を取得するために拡張可能なリストビューの方法を使用しますが、拡張可能なリストビューはchoiceModeまたはselectionと実際には互換性がないようです...

これは正しいですか ?誰かがすでに同様のプロジェクトを機能させるのに苦労しましたか?

4

1 に答える 1

1

双方向に互換性がないという投稿を見つけましたが、どこにあるのか思い出せません。

グループのブール配列と子の2次元ブール配列を関連付けることで、私が見つけた方法に固執します。グループまたは子をクリックするたびに、ブールの関連付けが位置に変更されます。

少し重いですが、機能し、やりたいことが何でもできます。

于 2011-08-10T08:52:57.863 に答える