Android开发之ListView详解 以及简单的listView优化

ListView列表视图
最常用的控件之一,使用场景例如:微信,手机QQ等等。
android:divider:每个item之间的分割线,可以使用图片或者色值。
android:dividerHeight:高度


使用方式,等同于Spinner:ArrayAdapter,SimpleAdapter,BaseAdapter。


BaseAdapter:
特点:高度自定义item布局,同时逻辑操作更加丰富。
getCount():item的数量
getItem():获取item中的数据
getItemId():获取item的id,通常使用position作为id即可。
getView(position, convertView, parent):获取item的布局。


当一个item出现在屏幕中时(尽管没有完全出现),就会执行getView()方法。


ListView优化:
一:convertView的复用
二:ListView的高度属性需要设置为match_parent,这样保证getView的调用次数与屏幕内item的次数保持一致
三:ViewHolder视图保持者。记录了控件所在位置,防止频繁的findViewById,因此能够避免频发触发GC,节省了内存开销。
程序员小冰博客:http://blog.csdn.net/qq_21376985 技术交流QQ986945193 微博:http://weibo.com/mcxiaobing
原文地址:https://www.cnblogs.com/mcxiaobing/p/5472100.html