- 2
- 0
- 约1.41万字
- 约 54页
- 2018-03-08 发布于天津
- 举报
清单元件与动作巡览
11-3-2 系統內建的內容提供者 – 內容提供者的URI(語法) 在第9-4-1節已經說明過URI,這一節筆者準備針對內容提供者的URI來進一步說明其語法,如下所示: content://內容提供者名稱/資料路徑/記錄編號 11-3-2 系統內建的內容提供者 – 內容提供者的URI(查詢字串範例) 內容提供者的URI查詢字串範例,如下表所示: URI查詢字串 說明 content://contacts/people 所有聯絡人資料的清單 content://browser/bookmarks 瀏覽器的所有書籤清單 content://call_log/calls 所有通話記錄的清單 content://media/internal/images 在內部儲存裝置的圖形檔清單 content://media/external/images 在外部儲存裝置SD卡的圖形檔清單 11-3-2 系統內建的內容提供者 – vider套件的URI類別常數 Android SDK在vider套件提供幫助類別(Helper Classes)的相關URI類別常數來代表上表的URI查詢字串,這是一些預先定義的類別常數,如下所示: ContactsContract.Contacts.CONTENT_URI Browser.BOOKMARKS_URI CallLog.CONTENT_URI MediaStore.Images.Media.INTERNAL_CONTENT_URI MediaStore.Images.Media.EXTERNAL_CONTENT_URI 11-4 使用系統的內容提供者 – 說明 我們自行建立內容提供者分享資料的機會並不多,因為建立Android應用程式最多只會在各活動之間分享資料,事實上,我們反而比較有可能因為程式所需使用系統內建的內容提供者,例如:在Android應用程式取得聯絡人資料。 11-4 使用系統的內容提供者 – 建立Uri物件 本節範例的MainActivity類別是繼承ListActivity類別建立ListView元件,資料來源是內容提供者。首先建立Uri物件,如下所示: Uri contacts = Uri.parse(content://contacts/people); 上述Uri.paser()類別方法的參數是URI查詢字串,我們也可以直接使用URI類別常數,相當於是下列程式碼,如下所示: Uri contacts = ContactsContract.Contacts.CONTENT_URI; 11-4 使用系統的內容提供者 – 取得內容提供者的聯絡人資料 然後使用Activity類別方法取得聯絡人資料的Cursor物件,如下所示: Cursor c = getContentResolver().query(contacts, null, null, null, null); 上述程式碼呼叫getContentResolver()方法取得ContentResolver物件,幫助我們解析Uri找到正確的內容提供者後,呼叫ContentResolver物件的query()方法執行查詢。 11-4 使用系統的內容提供者 – 建立欄位和介面元件的參數陣列 SimpleCursorAdapter結合器物件會對應記錄欄位至指定的介面元件,我們需要建立欄位和介面元件的參數陣列,如下所示: String[] columns = new String[] { ContactsContract.Contacts.DISPLAY_NAME, ContactsContract.Contacts._ID, }; int[] views = new int[] { R.id.contactName, R.id.contactID, }; 11-4 使用系統的內容提供者 – 建立SimpleCursorAdapter物件 然後建立SimpleCursorAdapter結合器物件,如下所示: SimpleCursorAdapter adapter = new SimpleCursorAdapter( this, R.layout.list_item, c, columns, views, CursorAdapter.FLAG_REGISTER_CONTENT_OBSERVER); setListAdapter(adapter); 上述建構子的第1個參數是Context物件,第2個是項目list_item.xml版面配置檔的資源索引,第3個是Cursor物件,之後2個是欄位對應顯示的介面元件,最後1個參數指定結合器的行為。 11-4 使用系統的內容提供者 – 傳回使用者
您可能关注的文档
最近下载
- SY-T 5504.3-2008 油井水泥外加剂评价方法 第3部分:减阻剂.pdf VIP
- 【三年级数学】每日口算 30 天.pdf VIP
- 物资采购应急方案.docx VIP
- 餐饮服务与管中职全套完整教学课件.pptx
- 第四版国际压力性损伤溃疡预防和治疗临床指南解读PPT课件.pptx VIP
- 1209 六年级(上)英语知识点汇总(外研版).docx VIP
- ICP-MS介绍讲课课件.ppt VIP
- 6篇2025年度民主生活会“五个带头”对照检查材料(参考范文).docx VIP
- DBJT_15-138-2018_建筑电气防火检测_技术规程-全国各省建筑标准.pdf VIP
- j12ZG604-全国各省建筑标准.pdf VIP
原创力文档

文档评论(0)