1. 程式人生 > >android高階控制元件(ListView) 列表控制元件

android高階控制元件(ListView) 列表控制元件

在strings中建立一個strings.xml,並定義字串陣列,用於當資料來源 張三 李四 王五 張三丰 abc abb bbb 110 120

得到字串陣列: String[] data = getResources().getStrigArray(R.array.data);

Spinner 下拉列表框屬性: android:entries = “@array/data” //設定下拉列表項

ListView 列表控制元件 (1)建立ListView控制元件 (2)建立資料來源(注意加final) (3)建立介面卡(ArrayAdapter) (4)設定控制元件介面卡 (5)新增點選監聽 控制元件.setOnItemClickList(new AdapterView.OnItemClickListener(){ //重寫方法 });

案例1:左圖示,右文字 (1)建立兩個控制元件,一個一個 (2)該案例應用到兩組資料,一組圖片,一組文字; int[] images={R.drwable.x1, R.drwable.x2, ……}; String[] title={“哈哈”,”呵呵”, ……};

//下面的SimpleAdapter第二個引數需要一個集合資料,因此下列程式碼:
List<Map<String,Object>> data = new ArrayList<>();
for(int i=0; i< images.length; i++){
    Map<String,Object> map = new HashMap<>();
    map.put("image",images[i]);
    map.put("title",title[i]);
    data.add(map);
}

// 參考:{ // {“image”:”圖1”, “title”:”哈哈”}, // {“image”:”圖2”, “title”:”呵呵”}, // {“image”:”圖3”, “title”:”……”}, // …… // }

(3)建立簡單介面卡SimpleAdapter,並繫結資料(難點)
SimpleAdapter simpleAdapter = new SimpleAdapter(this, data, android.R.layout.activity_list_item, new String[]{"image","title"}, new int[]{android.R.id.ico1, android.R.id.text1});
//注意第2個引數,及最後兩個引數

簡單介面卡語法: SimpleAdapter(Context context, List