0

Cellを拡張するクラスがありますLinearLayout。コンストラクターを使用して新しいセルを作成する際に、xml レイアウトを拡張してレイアウトにビューを追加したいと考えています。問題は、私の目には 2 つの選択肢があることです。

  1. 別のレイアウトの下にあるすべてのビューを含む単一の xml ファイルを膨張させる OR
  2. それぞれが異なるビューを含む複数のxmlファイルを膨張させる

レイアウトの子として別のレイアウトを追加したくないし、多くのビューを膨らませたくないので、それを行う最良の方法は何ですか?

4

1 に答える 1

0

次のようにプログラムでビューを作成することもできます

TextView t = new TextView(context)

しかし、多くのスタイルを適用すると、これは本当に面倒です。

もう 1 つの最も簡単だが最も遅いオプションは、あなたが言及したものです。各ビューを inlate します。多くのビュー (20 以上など) がある場合は、インフレが非常に高価であるため、実際に速度が低下する可能性があることに注意してください。

動的ビューの最大数がわかっている場合の 3 番目のオプションは、必要なすべてのサブビューを含むビューを最大にし、他のすべてを非表示に設定することです。これもハックですが、よりもはるかに高速です。

最後の最良のオプションは、から継承しListView、単に使用することAdapterです。

于 2013-11-03T18:45:07.837 に答える