2011-11-07 14 views
0

私はListViewを動的に追加したいと思っています。アイテムについては、XMLで定義した特定のレイアウトを使用したいと考えています。どのようにアイテムを追加し、各アイテムに特定のXMLレイアウトを使用させるにはどうすればよいですか?Android - 既存のXMLレイアウトを使用してListViewにアイテムを動的に追加しますか?

アダプターを作成して、すべてのフープをジャンプする必要がありますか?私が表示する必要がある項目はほんの一握りです。各項目には、表示する必要のある画像だけでなく、入力する必要のあるテキスト・ビューがいくつかあります。

私はAdapterルートを使用する場合、基本的に、各テキストビューのテキストとダウンロードしているイメージのURLを含むカスタムオブジェクト/クラスを作成する必要があります。いくつかのリストビュー項目を表示するだけで、過度の使い方に似ているようです。

私はちょうど私のアイテムを繰り返し、それぞれのビューを膨らませてリストビューに追加することはできますか?

答えて

2

あなたがあなたの目的のためにScrollViewを使用したいです。ルールはScrollViewに1つの子レイアウト(そのレイアウトには、内部に配置するすべてのアイテムが含まれている)のみであることを除いて、リストビューと同じように機能します。レイアウトを膨張させてから、addView()を実行します。リンスリピート。

+0

これは素晴らしい解決策です。カスタムオブジェクトを作成してカスタムアダプタを作成し、次にgetView()メソッドをオーバーライドして自分のXMLを作成する必要がなくなりました。これは簡単になります。ありがとう! –

0

本当に複雑ではないアダプタを作成することもできますし、内部でLinearLayoutを使ってScrollViewを使用して自分自身を膨張させることもできます。どちらのオプションも要件に応じて妥当ですが、自分自身を膨らませてビューを手動でListViewに追加することは、それらの1つではありません。あなたが説明することで、LinearLayoutルートに行きたいかもしれないように思えます。

  • メインレイアウトのXMLにLinearLayoutを含むScrollViewを配置します。
  • 各子の場合:
    • 子アイテムのビューを膨張させて、それに応じてフィールドに値を設定します。
    • addViewを使用して、子ビューをLinearLayoutに追加します。
関連する問題