回答:
Androidアプリにリストを表示するとします。これにはListView
、Android が提供するものを使用します。
ListView
■実際にはデータ自体は含まれていません。これは、データが含まれていない単なるUI要素です。ListView
Androidアダプターを使用してにデータを追加できます。
Adapter
その実装がデータを提供し、そのデータの表示を制御するインターフェースです。
ListView
のListView
表示を完全に制御する独自のアダプタ。したがって、アダプターは、リストに表示されるコンテンツとその表示方法を制御します。
Adapter
インターフェースは、にデータを通信するための様々な方法を含みますListView
。を実装すると、独自のアダプタを最初から作成できますBaseAdapter
。
public class ArrayAdapter<T> extends BaseAdapter implements Filterable {
// One of the constructors
public ArrayAdapter(Context context, int resource, int textViewResourceId, T[] objects) {
init(context, resource, textViewResourceId, Arrays.asList(objects));
}
void manyMoreMethods(){}
}
アダプタを定義しましょう:
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_list_item_1, android.R.id.text1, values);
TextView
データの書き込み先のIDAndroidのアダプタは基本的に、UIコンポーネントと、データをUIコンポーネントに入力するデータソース間のブリッジです。
たとえば、リスト(UIコンポーネント)は、データソース配列からリストアダプターを使用して設定されます。
私の理解を共有したいと思います。
これは、データソースとレイアウト(おそらくListView)の間のインターフェイスです。
モバイル充電器、またはUSBケーブルの例を見てみましょう。ワイヤはアダプタと見なすことができますが、データソースとレイアウトは、それぞれソケット(プラグインポイント)とUSBポート(充電ポイント)として理解できます。
モバイル充電の場合、電源は異なります。たとえば、電源バンク、ソケット、またはラップトップから充電します。Androidで使用されるアダプターの場合も同様です。データソースは、アプリケーションの要件に応じて変更される場合があります。
つまり、Androidのアダプターはソース(例ArrayList<>
:)からデータを運び、レイアウト(.xmlファイル)に配信します。
Androidのアダプターは、アダプタービュー(などListView
)とそのビューの基になるデータの間のブリッジです。アダプターがなければ、世界はどうなっていたでしょう。
垂直スクロールリストのアイテムを表示するビュー。アイテムは、ListAdapter
このビューに関連付けられたものから取得されます。
ListAdapter
リストの個々の行のためのレイアウトを定義し、にデータを提供するListView
介しsetAdapter()
方法
ListView
。
Androidはいくつかの標準アダプターを提供しています。最も重要なのは
ArrayAdapter
およびCursorAdapter
です。
ArrayAdapter
配列またはリストに基づいてデータを処理できます。
SimpleCursorAdapter
データベース関連のデータを処理できます。アダプターは基本的にコンテンツの配信に使用されます。おそらくすべてのアプリケーションにある1つのアダプターはCursorAdapterです。これにより、データベースクエリからのカーソルによって指定されたコンテンツを配信できます。ListViewには、ほぼ常に何らかの種類のアダプタがあります。
最後に、アダプターはレポートを作成するのに非常に役立ちます。一部の情報のレポートを表示したい場合は、このツールを使用してデータをビューに表示できます。