1.ListView
1.1ListView是什么
是一个将数据集合以动态滚动的列表方式将数据展现到用户界面上的View。
1.2ListView的适配器
ArrayAdapter:支持泛型操作,最简单的一个Adapter,只能展现一行文字
SimpleAdapter:同样具有良好扩展性的一个Adapter,可以自定义多种效果
BaseAdapter:抽象类,实际开发中我们会继承这个类并且重写相关方法,用得最多的一个Adapter
常用的适配器是:BaseAdapter
ArrayAdapter,SimpleAdapter都是继承于BaseAdapter,BaseAdapter可以根据数据的的复杂性,以任何效果展现给用户
继承BaseAdapter之后,需要重写以下四个方法:getCount,getItem,getItemId,getView。
系统在绘制ListView之前,将会先调用getCount方法来获取Item的个数。每绘制一个Item就会调用一次getView方法,在getView中引用事先定义好的layout布局确定显示的效果并返回一个View对象作为一个Item显示出来。
1.3ListView的优化:
a.convertView重用机制
b.ViewHolder机制
c.三级缓冲/滑动监听事件
优化一:在Adapter中的getView方法中使用ConvertView,即ConvertView的复用,不需要每次都inflate一个View出来,这样既浪费时间,又浪费内存。
优化二:使用ViewHolder,不要在getView方法中写findViewById方法,因为getView方法会执行很多遍,这样也可以节省时间,节约内存。
优化三:使用分页加载,每加载一页的时候可以覆盖前一页的数据。
优化四:如果数据当中有图片的话,使用第三方库来加载(也就是缓存)。
优化五:当你手指在滑动列表的时候,尽可能的不加载图片,这样的话滑动就会更加流畅。
网友评论