0

このリンクに基づいて展開可能なリストビューを作成しました。うまく機能しています。今、私が欲しいのは

1) 別のサブ子ビューをリンクするための子ビューの作成方法

2)ウィンドウ(ビューの右側)の新しいリストビューここが私の予想されるレイアウトであるため、サブ子ビューを開く必要があります。私はグーグルで検索しましたが、これを達成する方法が見つかりませんでした。これを達成するのを手伝ってください。前もって感謝します。

4

2 に答える 2

0

では、最初の子を別の ListView に展開しますか? それとも、一致する ListView を含む別のアクティビティ/フラグメントを開くだけですか?

最初に必要な場合は、Childview の CustomLayout を設計できます。これは OnClick で展開され、そのコンテンツが特定の ListView に変更されます。

それ以外の場合は、最初のリストのどの子がクリックされたかに応じて、データを含む別の ListView を開くだけです。

まあ、私はそのようなものを使用して、クリック時に ChildViews を拡大して詳細情報を表示しています。

クラスを使用して、Row という名前のデータをラップしています。これらの行は、クリック可能かどうかを示します。クリック可能である場合、ListView は行のクリックを許可します。その後、クリックはクラス自体によって処理され、表示されるテキストが長くなります (より詳細になります)。アイテムを再レイアウトするには、notifyDataSetChanged を呼び出す必要があります。

@Override
public void onClick(Context context, MyExpandableListAdapter mela) {
    this.setBig(!isBig());
    mela.notifyDataSetChanged();
}

したがって、親アダプターの getView メソッドで行の状態 (展開/通常) を処理して、どの childLayout を膨らませるかを決定します。

このように見えるでしょう

public View getView (args...) {
 Object data = getItem(position);

 if (data.isExpanded()) {
    //inflate ListView Layout, create Addapter fill it....
 } else {
    //show some title or whatever to identify row.
 }
}
于 2013-10-11T09:01:01.253 に答える