ListView相对其它的控件,算是比较复杂的,先要理清思路
ListView三个要素:
1.ListView
用来显示,还可以响应触击事件。该怎么布局显示每一行呢?你应该想到要用layout了,没错,可以使用android自带的一些简单的现成布局,也可以自己定义。
2.Adapter
将数据映射到ListView上的适配器,分为ArrayAdapter,SimpleAdapter,SimpleCursorAdapter和BaseAdapter
ArrayAdapter最为简单,比如每行显示一行文字。
SimpleAdapter要求绑定的数据是List<HashMap<String, Object>>数据类型
SimpleCursorAdapter要求绑定的数据是Cursor数据类型
BaseAdapter通常用来自定义ListView
3.Data
显示的具体内容,比如文字,图片,或者其它的控件。可以事先定义好,也可以来自数据库
ListView自定义BaseAdapter及优化:
需重写几个方法,其中getView最重要,注意下面两点优化
1. 重用缓存convertView
2. ViewHolder
详细参考:
基本使用方法
http://blog.csdn.net/lqhed/article/details/51464267
http://blog.csdn.net/lqhed/article/details/51464080
http://blog.csdn.net/lqhed/article/details/51464114
http://blog.csdn.net/lqhed/article/details/51464144
http://blog.csdn.net/lqhed/article/details/51464153
优化参考:
http://blog.csdn.net/lqhed/article/details/51464171
http://blog.csdn.net/lqhed/article/details/51464207
内容刷新:
http://blog.csdn.net/lqhed/article/details/51464245
ListView源码分析:
http://blog.csdn.net/lqhed/article/details/51464224