Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> ListView的Adapter使用 之 初學ArrayAdapter String

ListView的Adapter使用 之 初學ArrayAdapter String

編輯:關於Android編程

ListView是Android中經常會使用的東西,綁定數據對於初學者來說,尤其是剛接觸編程的人來說,往往會覺得很難理解,我上大二的時候學的java,但是基本上相當於沒有學,什麼都沒寫過,真正接觸編程就是開始上手學android,把這些記錄下來,自己可以回頭看下,也可以讓新手更好的理解。高手繞過....

Android中Adapter我是這麼理解的,是數據和視圖之間的橋梁,數據在adapter中做處理,然後顯示到視圖上面。

Adapter有很多種,有ArrayAdapter<T>, BaseAdapter, CursorAdapter, HeaderViewListAdapter, ListAdapter, ResourceCursorAdapter, SimpleAdapter, SimpleCursorAdapter, SpinnerAdapter, WrapperListAdapter.

我在項目中用到過的就ArrayAdapter<T>, (數組也可以是對象數組),BaseAdapter(所有Adapter的基類),SimpleAdapter,CursorAdapter(數據來源是cursor),SimpleCursorAdapter,感覺有必要總結一下。

最基本的要數sdk官網上面給的這個代碼例子了http://developer.android.com/resources/tutorials/views/hello-listview.html。

 

我自己寫的一個例子,先上圖,再貼上代碼:



復制代碼 代碼如下:
package com.cz.list.demo;
import android.app.Activity; import android.os.Bundle;
import android.widget.ArrayAdapter; import android.widget.ListView;
public class ArrayListDemo extends Activity {
private ListView listView; private String[] adapterData;
/** Called when the activity is first created. */
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(R.layout.array_list_layout);
/* 找到這個listView */
listView = (ListView) findViewById(R.id.array_list);
/* 我們要在listView上面沒條顯示的數據,放到一個數組中 */ adapterData = new String[] { "Afghanistan", "Albania", "Algeria",
"American Samoa", "Andorra", "Angola", "Anguilla", "Antarctica", "Antigua and Barbuda", "Argentina", "Armenia",
"Aruba", "Australia", "Austria", "Azerbaijan", "Bahrain", "Bangladesh", "Barbados", "Belarus", "Belgium", "Belize",
"Benin", "Bermuda", "Bhutan", "Bolivia", "Bosnia and Herzegovina", "Botswana", "Bouvet Island" };
/* 這個是數組string類型的數組 */
// ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>( // ArrayListDemo.this, android.R.layout.simple_list_item_1,
// adapterData);
/* 設置ListView的Adapter */ listView.setAdapter(new ArrayAdapter<String>(ArrayListDemo.this,
android.R.layout.simple_list_item_1, adapterData)); }
}


代碼中寫的有注釋,我覺得要解釋的有幾點,都是很基礎的,高手就見笑了.

1. 適配器的作用是數據和視圖之間的橋梁
2. 這個小例子是要顯示一個數組,我們就用ArrayAdapter,數組適配器,數據的數據類型<>是String類型的,數據的數據類型還可以是其他的包括對象類型的
3. ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
ArrayListDemo.this, android.R.layout.simple_list_item_1,
adapterData);
這段代碼是創建一個數組適配器的代碼,裡面有三個參數,第一個參數是上下文,就是當前的Activity, 第二個參數是android sdk中自己內置的一個布局,它裡面只有一個TextView,這個參數是表明我們數組中每一條數據的布局是這個view,就是將每一條數據都顯示在這個view上面;第三個參數就是我們要顯示的數據。listView會根據這三個參數,遍歷adapterData裡面的每一條數據,讀出一條,顯示到第二個參數對應的布局中,這樣就形成了我們看到的listView. 不知道剛學的同學懂了沒有...

本文出自 “生如夏花” 博客

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved