Android API : SimpleCursorAdapter()

來源:互聯網
上載者:User

SimpleCursorAdapter() 是 SimpleCursorAdapter 類的建構函式。

 

描述:

SimpleCurosrAdapter 是一個將 Cursor 中的 columns 與在 XML 檔案中定義的 TextViews 或 ImageViews 進行匹配的簡易 adapter。你可以指定選擇 Cursor 中的哪些 columns、用哪些 views 來顯示這些 columns 、以及指定定義這些 views 的 xml 檔案。 

也就是說,SimpleCursorAdapter 允許綁定一個 Cursor 的 columns 到 ListView 上,並使用自訂的 layout 顯示 List中的每個項目。

可以使用 SimpleCursorAdapter 作為中間橋樑,將從 sqlite 資料庫中查詢出來的資料直接顯示到 ListView 中。

 

原型:

public SimpleCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to) {

    super(context, layout, c);

    mTo = to;

    mOriginalFrom = from;

    findColumns(from);

}

參數:

Context context, 這個與 SimpleListItemFactory 相關的 ListView 所處運行上下文(context)。也就是這個 ListView 所在的 Activity。

int layout, 顯示 list item 的 布局檔案。這個 layout 檔案中至少要包含在 "to" 參數中命名的 views。

Cursor c, 資料庫的游標( Cursor )。如果 cursor 無效,則該參數可以為 null

String[] from, 指定 column 中的哪些列的資料將綁定(顯示)到 UI 中。如果 cursor 無效, 則該參數可為 null。

int[] to, 指定用於顯示 "from" 參數指定的資料列表的 views。 這些 views 必須都是 TextViews。 "from" 參數的前 N 個值(valus)和 "to" 參數的前 N 個 views 是一一對應的關係。如果 cursor 無效,則該參數可為 null。

 

樣本:

Uri uri = Contacts.People.CONTENT_URI;

String[] projection = { Contacts.PeopleColumns.NAME,

        Contacts.PeopleColumns.NOTES };

String selection = Contacts.PeopleColumns.NAME + "=?";

String[] selectionArgs = { "Braincol","Nixn.dev" };

String sortOrder = Contacts.PeopleColumns.NAME;

//使用 managedQuery 擷取 Contacts.People 這個 ContentProvider 的 Cursor。

Cursor cursor = managedQuery(uri, projection, selection, selectionArgs,sortOrder);

    

//使用 SimpleCursorAdapter 建立 Cursor 的 Adapter 以便使用,資料表示形式為:NAME - NOTES

SimpleCursorAdapter adapter = new SimpleCursorAdapter(this, R.layout.contact_list_item, 

              cursor, new String[] { ContactColumn.NAME,ContactColumn.NOTES }, 

              new int[] { R.id.name, R.id.notes });

//為當前ListView關聯Adapter

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.