RecyclerView Adapters 系列(2):RecyclerView Cursor Adapter

lihenair發表於2015-11-06

在Android平臺中,CursorAdapter是一個介面卡,用來把Cursor物件的資料展示到ListView控制元件裡。RecyclerView介面卡的第二篇將解釋如何自己構造一個簡單可重用的Cursor介面卡,以及如何在你的應用中使用它。第三篇文章中,我將展示一個CursorAdapter類的更高階版本。

(相比於Android CursorAdapter,本例中用到的Cursor,不包含名為“_id”的列)

首先,我們建立一個抽象類RecyclerViewCursorAdapter,該類持有Cursor物件並實現一些RecyclerView.Adapter類需要的方法(例如getItemCount())。

而且,我們的介面卡類將定義一個新的方法叫做onBindViewHolder(RecyclerView.ViewHolder, Cursor)。所以,你不需要每次獲取Cursor物件來將資料繫結到ViewHolder。

我們還增加了一些幫助方法,例如:

  • swapCursor(Cursor):提供帶資料集(dataset)的介面卡。
  • getItem(int):獲得Cursor物件,移動到正確的位置。
  • getCursor():獲得Cursor物件。

實現這個抽象類並填充資料是相當簡單的。

Providing the adapter with data in your Activity / Fragment:

在Activity或Fragment中提供帶資料的介面卡:

相關文章