状況によっては、 を使用してリストを作成し、 、またはViewGroup
のように機能させる方がよい場合があります。ListView
RecyclerView
たとえばViewGroup
、ルート レイアウトの子である にアイテムのリストを表示する必要がある状況があります。ルート レイアウトはスクロール可能 (たとえば aScrollView
または) であるため、別のスクロールを使用してリスト項目を表示NestedScrollView
することは不適切です。View
この例としては、リスト アイテムを表示することがCardView
考えられます (もちろん、この場合、カードはこの目的ではないため、あまり多くのリスト アイテムは必要ありません)。特にカードがスクロール ルート レイアウトの一部である場合、カード内でスクロール レイアウトを使用することは明らかに適切ではありません。
別の例として、Navigation Drawer を作成することもできます (もちろん、Google I/O 2015 以降ではDesign Support Libraryがあるため、 を使用するNavigationView
方がはるかに簡単で簡単です)。しかし、デザイン サポート ライブラリの前に、ドロワーのルート レイアウトをスクロール可能にする必要があったため、ナビゲーション ドロワーに表示するアイテムをViewGroup
(おそらく aに)LinearLayout
設定する必要がありました。このシナリオの詳細については、同様の質問をしました .
問題のポイントは、 をリスト レイアウトとして使用する簡単な方法がないということですViewGroup
。そのため、私たちの多くは複雑なソリューションを使用してListView
やのスクロールを無効にする傾向がありますRecyclerView
。はい、 のスクロールはListView
無効にできますが、通常はまだ Lint 警告が表示されます。したがって、リストの使用ViewGroup
は、 scroll でスクロールを無効にする代替ソリューションと考えることができますView
。
ViewGroup
s をリストとして使用する簡単な方法はありますか?