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,节省了内存开销。