配適器有兩種
1:ArrayAdapter
2:SimpleAdapter
第一種比較簡單 第二種對我來說比價難 所以有了註釋哈哈 我還是沒有寫註釋的好習慣呀~~~
直接貼代碼好了
package com.example.admin.test_0307_2;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class MainActivity extends AppCompatActivity {
private ListView listView;
private ArrayAdapter arr_Adapter;
private SimpleAdapter sim_adapter;
private List<Map<String,Object>> datalist;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
<span style="background-color: rgb(204, 204, 255);">//這裏吧data定義w位一個包含Map的數組 用ArrayList裝;</span>
datalist=new ArrayList<Map<String,Object>>();
listView= (ListView) findViewById(R.id.listView);
<span style="color:#6666cc;"> </span>
<span style="background-color: rgb(204, 204, 255);"> /*
SimpleAdapter()的五個參數:
1 上下文;
2 數據也就是datalist; 這裏的包含的是Map<String,Object>
3 來源 也就是我們建立的item;
4 所以這裏就是 datalist中 Map<>對應的String
5 同上 這裏對應的 是Object 通過查找id來獲得
<span style="font-family: Arial, Helvetica, sans-serif;">*/</span></span>
sim_adapter=new SimpleAdapter(this,getdata(),R.layout.item,
new String[]{"pic","text"},new int[]{R.id.imageView,R.id.textView});
listView.setAdapter(sim_adapter);
}
<span style="background-color: rgb(204, 204, 255);">/*
獲得datalist的方法
1建立一個Map 定義Map<String,Object> map =new HashMap<String,Object>()!!!這裏別忘記();
2向其中添加 對應的String 和對應的value
3然後把一個個map添加進datalist
4返回需要的類型對應的datalist
*/</span>
private List<Map<String,Object>> getdata() {
for(int i=0;i<10;i++){
Map<String,Object> map =new HashMap<String,Object>();
map.put("pic",R.drawable.lufei2);
map.put("text",i+"個路飛看着你"+i+i+i);
datalist.add(map);
}
return datalist;
}
}
xml
很簡單一個ImageView還有一個TextView
加油吧少年~