RecyclerViewの基本
ListView, RecyclerViewで差がないことについては、こちらのListViewの基本で書きました。
ここではRecyclerViewに特有のことだけ書きます。
LayoutManager
ListViewとちがい、RecyclerViewではViewの表示の仕方を制御するクラスとして、RecyclerView.LayoutManagerを継承したクラスが必要になる。
ただ、単にリスト表示させたいだけなら(その他グリッド表示とかも)出来合いのクラスのLinerLayoutManagerなどがあるのでそれで足りる。
Adapter
Adapterを作って、RecyclerViewの子Viewを作らせるのは、ListViewと変わらない。
ただRecyclerViewの場合は、RecyclerView.Adapter型のAdapterにする必要がある。
※ListViewではAdapterを使っていたので、含まれるメソッドの構成などがかなり違う。
- getItemCount()
- データの個数を返す
- onCreateViewHolder()
- viewを生成したものをViewHolderに入れて返す
- onBindViewHolder()
- ViewHolderの特定の位置にデータをセットする
ちなみに、上記のようなメソッドがある通り、ViewHolderの実装が必須になっている。
また、Adopterは、ListViewの時と同じく、何らかの方法で表示用のデータを保持しておく必要がある。(一番基本のパターンだと、表示用のPOJOのモデルクラスをArrayで持っておくなど)