Xamarin.Android ListView のパーツと機能
ListView
は、次のパーツで構成されます。
行 – リスト内のデータの表示形式。
アダプター – データ ソースをリスト ビューにバインドする非ビジュアル クラス。
高速スクロール – ユーザーがリストの長さをスクロールできるようにするハンドル。
セクション インデックス – リスト内の現在の行が配置されている場所を示すためにスクロール行の上に浮動するユーザー インターフェイス要素。
これらのスクリーンショットでは、基本的な ListView
コントロールを使用して、高速スクロールとセクション インデックスのレンダリング方法を示します。
ListView
を構成する要素については、以下で詳しく説明します。
行数
各行には独自の View
があります。 ビューは、Android.Resources
で定義されている組み込みビューのいずれか、またはカスタム ビューにすることができます。 各行で同じビュー レイアウトを使用することも、すべて異なるものにすることもできます。 このドキュメントの例には、組み込みのレイアウトを使用するものや、カスタム レイアウトを定義する方法を説明するものがあります。
アダプター
ListView
コントロールには、各行の書式設定された View
を指定するための Adapter
が必要です。 Android には、使用できるアダプターとビューが組み込まれています。カスタム クラスを作成することもできます。
高速スクロール
ListView
に多数のデータ行が含まれている場合は、ユーザーがリストの任意の部分に移動できるように、高速スクロールを有効にすることができます。 高速スクロールの "スクロール バー" は、必要に応じて有効にできます (API レベル 11 以降でカスタマイズできます)。
セクション インデックス
長いリストをスクロールすると、オプションのセクション インデックスによって、現在表示されているリストの部分に関するフィードバックがユーザーに提供されます。 これは長いリストにのみ適しており、通常は高速スクロールと組み合わせて使用されます。
クラスの概要
ListViews
の表示に使用される主なクラスを以下に示します。
各クラスの目的を以下で説明します。
ListView – 行のスクロール可能なコレクションを表示するユーザー インターフェイス要素。 電話では通常、画面全体が使い果たされる (その場合は、
ListActivity
クラスを使用できます) か、電話やタブレット デバイスのより大きなレイアウトの一部になる可能性があります。View – Android のビューは任意のユーザー インターフェイス要素にすることができますが、
ListView
のコンテキストでは、各行にView
を指定する必要があります。BaseAdapter –
ListView
をデータ ソースにバインドするためのアダプター実装の基本クラス。ArrayAdapter –表示用の
ListView
に文字列の配列をバインドする組み込みアダプター クラス。 ジェネリックArrayAdapter<T>
では、他の型でも同じ処理が行われます。CursorAdapter – SQLite クエリに基づいてデータを表示するには、
CursorAdapter
またはSimpleCursorAdapter
を使用します。
このドキュメントには、ArrayAdapter
を使用する簡単な例と、BaseAdapter
または CursorAdapter
のカスタム実装を必要とするより複雑な例が含まれています。