国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

ListView的Adapter使用 之 初學(xué)ArrayAdapter String

2020-04-11 12:15:15
字體:
供稿:網(wǎng)友

ListView是Android中經(jīng)常會(huì)使用的東西,綁定數(shù)據(jù)對(duì)于初學(xué)者來說,尤其是剛接觸編程的人來說,往往會(huì)覺得很難理解,我上大二的時(shí)候?qū)W的java,但是基本上相當(dāng)于沒有學(xué),什么都沒寫過,真正接觸編程就是開始上手學(xué)android,把這些記錄下來,自己可以回頭看下,也可以讓新手更好的理解。高手繞過....

Android中Adapter我是這么理解的,是數(shù)據(jù)和視圖之間的橋梁,數(shù)據(jù)在adapter中做處理,然后顯示到視圖上面。

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

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

最基本的要數(shù)sdk官網(wǎng)上面給的這個(gè)代碼例子了http://developer.android.com/resources/tutorials/views/hello-listview.html。

 

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



復(fù)制代碼 代碼如下:

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);
/* 找到這個(gè)listView */
listView = (ListView) findViewById(R.id.array_list);
/* 我們要在listView上面沒條顯示的數(shù)據(jù),放到一個(gè)數(shù)組中 */ 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" };
/* 這個(gè)是數(shù)組string類型的數(shù)組 */
// ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>( // ArrayListDemo.this, android.R.layout.simple_list_item_1,
// adapterData);
/* 設(shè)置ListView的Adapter */ listView.setAdapter(new ArrayAdapter<String>(ArrayListDemo.this,
android.R.layout.simple_list_item_1, adapterData)); }
}


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

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

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

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 古丈县| 青州市| 微博| 盖州市| 图木舒克市| 甘德县| 烟台市| 平和县| 合阳县| 河曲县| 靖江市| 绥化市| 阜宁县| 安福县| 香港| 甘肃省| 建平县| 宝鸡市| 青川县| 高淳县| 锦屏县| 太康县| 南陵县| 成都市| 台北市| 萝北县| 逊克县| 定南县| 保定市| 濉溪县| 嘉荫县| 图木舒克市| 枝江市| 洪湖市| 嫩江县| 武城县| 波密县| 前郭尔| 商城县| 三原县| 胶南市|