編輯:Android開發實例
Adapter在Android中占據一個重要的角色,它是數據和UI(View)之間一個重要的紐帶。在常見的View(ListView,GridView)等地方都需要用到Adapter。如圖1直觀的表達了Data、Adapter、View三者的關系。
圖1 Adapter、數據、UI三者關系(PS:此圖來自Google I/O)
一、Android中Adapter
圖2:Android中Adapter類型層級圖
由圖2我們可以看到在Android中與Adapter有關的所有接口、類的完整層級圖。在我們使用過程中可以根據自己的需求實現接口或者繼承類進行一定的擴展。比較常用的有 BaseAdapter,ArrayAdapter,SimpleCursorAdapter等。
二、一個繼承BaseAdapter的類的代碼段
1: /**
2: * 歌曲列表適配器
3: *
4: * @version 2010-11-24 下午05:13:33
5: * @author Hal
6: */
7: public class AudioListAdapter extends BaseAdapter {
8:
9: private Context mContext;
10:
11: // 歌曲集合
12: private ArrayList<Audio> mAudios;
13:
14: public AudioListAdapter(Context mContext, ArrayList<Audio> mAudios) {
15: this.mContext = mContext;
16: this.mAudios = mAudios;
17: }
18:
19: @Override
20: public int getCount() {
21: return mAudios != null ? mAudios.size() : 0;
22: }
23:
24: @Override
25: public Object getItem(int position) {
26: if ((mAudios != null && mAudios.size() > 0) && (position >= 0 && position < mAudios.size())) {
27: return mAudios.get(position);
28: }
29: return null;
30: }
31:
32: /**
33: * 如果集合中的對象數據來自數據庫,建議此方法返回該對象在數據庫中的ID
34: */
35: @Override
36: public long getItemId(int position) {
37: if ((mAudios != null && mAudios.size() > 0) && (position >= 0 && position < mAudios.size())) {
38: return mAudios.get(position).getId();
39: }
40: return position;
41: }
42:
43: @Override
44: public View getView(int position, View convertView, ViewGroup parent) {
45: //TODO 返回自定的View
46: }
JSON代表JavaScript對象符號。它是一個獨立的數據交換格式,是XML的最佳替代品。本章介紹了如何解析JSON文件,並從中提取所需的信息。Android提供了四個
先給大家展示下關於仿支付寶錢包首頁中帶有分割線的gridview,俗稱九宮格 的效果圖,怎麼樣是不是和你想象的一樣啊。在你的預料之中就繼續訪問以下代碼內容吧。
本文實例講述了Android編程單元測試。分享給大家供大家參考,具體如下: 完整實例代碼代碼點擊此處本站下載。 本文是在上一篇文章《java編程之單元測試(Jun
登錄應用程序的屏幕,詢問憑據登錄到一些特定的應用。可能需要登錄到Facebook,微博等本章介紹了,如何創建一個登錄界面,以及如何管理安全問題和錯誤嘗試。首先,必須定義兩