Android培訓三十二課第十一講

   Anroid是一種以嵌入式爲基礎的開放源碼操作系統,Android培訓第十一講:系統講解ListView 

  ListView的使用方法
  ListViewAndroid軟件開發中非常重要組件之一,基本上是個軟件基本都會使用ListView ,今天我通過一個demo來教大家怎麼樣使用ListView組件 繪製出漂亮的列表,說道  ListView就不得不說Adapter適配器,因爲只有通過Adapter纔可以把列表中的數據映射到ListView中。
  在開發中最Adapter 一共可以分爲
ArrayAdapter<T>,
BaseAdapter,
CursorAdapter,
HeaderViewListAdapter,
ResourceCursorAdapter,
SimpleAdapter,
SimpleCursorAdapter,
WrapperListAdapter
軟件開發中最常用的有ArrayAdapter<T>, BaseAdapter, SimpleAdapter,今天我用一段代碼向大家詮釋如何使用ListView控件。
1.簡單的ListView
     在List列表中如果不存在過於複雜的東西 我們可以直接去new ArrayAdapter() 來繪製列表,無須繼承ArrayAdapter,重寫它的方法。但是如果列表中過於複雜的話就需要使用自定義佈局來實現List列表。

實現代碼:

public class SimpleList extends ListActivity {

1     private String[] mListStr = {"姓名:亞嵌教育","性別:男","年齡:25","居住地:北京","郵箱:[email protected]"};

2     ListView mListView = null;

3     @Override

4     protected void onCreate(Bundle savedInstanceState) {

5         mListView = getListView();

6         setListAdapter(new ArrayAdapter<String>(this,

7                 android.R.layout.simple_list_item_1, mListStr));

8         mListView.setOnItemClickListener(new OnItemClickListener() {

9             @Override

10             public void onItemClick(AdapterView<?> adapterView, View view, int position,

11                     long id) {

12                 Toast.makeText(SimpleList.this,"您選擇了" + mListStr[position], Toast.LENGTH_LONG).show();

13             }

14         });

15 

16         super.onCreate(savedInstanceState);

17     }

18 }

2.帶標題的ListView列表

使用 simpleAdapter 需要注意的是須要用Map<String,Object> item 來保存列表中每一項的顯示的titletext , new SimpleAdapter的時候將map中的數據寫入 ,程序就會幫我們繪製列表了。


public class TitleList extends ListActivity {

19     private String[] mListTitle = { "姓名", "性別", "年齡", "居住地","郵箱"};

20     private String[] mListStr = { "亞嵌教育", "", "25", "北京",

21             "[email protected] " };

22     ListView mListView = null;

23     ArrayList<Map<String,Object>> mData= new ArrayList<Map<String,Object>>();;

24 

25     @Override

26     protected void onCreate(Bundle savedInstanceState) {

27         mListView = getListView();

28       

29         int lengh = mListTitle.length;

30         for(int i =0; i < lengh; i++) {

31             Map<String,Object> item = new HashMap<String,Object>();

32             item.put("title", mListTitle[i]);

33             item.put("text", mListStr[i]);

34             mData.add(item);

35         }

36         SimpleAdapter adapter = new SimpleAdapter(this,mData,android.R.layout.simple_list_item_2,

37                 new String[]{"title","text"},new int[]{android.R.id.text1,android.R.id.text2});

38         setListAdapter(adapter);

39         mListView.setOnItemClickListener(new OnItemClickListener() {

40             @Override

41             public void onItemClick(AdapterView<?> adapterView, View view, int position,

42                     long id) {

43                 Toast.makeText(TitleList.this,"您選擇了標題:" + mListTitle[position] + "內容:"+mListStr[position], Toast.LENGTH_LONG).show();

44             }

45         });

46         super.onCreate(savedInstanceState);

47     }

48 }

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章