1.数据适配器:连接数据源和视图界面的桥梁。
常用适配器:
ArrayAdapter:简单视图
SimpleAdapter:复杂视图
实现过程:
1.新建适配器~2.添加数据源到适配器~3.视图加载适配器
public class MainActivity extends Activity {
ListView listView ;
SimpleAdapter simpleAdapter;
List<Map<String, Object>> dataList;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView =(ListView)findViewById(R.id.listView1);
//新建适配器 ~ 添加数据源到适配器
//第二个参数:数据源 List<? extends Map<String, ?>>
//第三个参数是layout的id,一般是自己新建一个layout
//第四个参数是数据源中map 的key
//第五个参数与第三个参数对应,是视图layout中的视图组件id
simpleAdapter = new SimpleAdapter(this, getData(), R.layout.item, new String[]{"pic","text"}, new int[]{R.id.pic,R.id.text});
//视图加载适配器
listView.setAdapter(simpleAdapter);
}
public List<Map<String, Object>> getData() {
//数据源
dataList = new ArrayList<Map<String,Object>>();
for (int i = 0; i < 20; i++) {
Map<String, Object> data =
new HashMap<String,Object> ();
data.put("pic", R.drawable.ic_launcher);
data.put("text", "mukew"+i);
dataList.add(data);
}
return dataList;
}
2、ViewHolder优化BaseAdapter的思路