Android开发之ListView详解 以及简单的listView优化
2016-05-31 00:00
609 查看
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,节省了内存开销。
最常用的控件之一,使用场景例如:微信,手机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,节省了内存开销。
相关文章推荐
- java生成四位随机数,包含数字和字母 区分大小写,特别适合做验证码,android开发
- Android开发之封装log打印日志的工具类,实用logutils详细代码
- android开发中防止刚进入activity时edittext获取焦点,防止自动自动弹出软键盘
- Android Studio出现:Your project path contains non-ASCII 错误代码解决方法
- 遍历查找集合或者数组中的某个元素的值 java代码 详解 Android开发
- Android开发之TextView中间设置横线,适用于电商项目,商品原价之类的功能。
- android开发之动画的详解 整理资料 Android开发程序小冰整理
- android开发之使edittext输入弹出数字软键盘。亲测可用。手机号登陆注册常用。
- Android开发之dp转像素,像素转换为dp工具类,详细代码,带有源文件下载地址。
- Android中的Activity四种启动模式(launchMode)
- 获取android手机的屏幕分辨率 android开发
- android studio 如何进行格式化代码 快捷键必备
- android开发之java的一些基础知识详解,java编程语法,扎实自己的android基本功
- android开发之gridView的一些属性。(项目经验总结)
- Android开发值利用Intent进行put传值,setclass启动activity,并用get进行取值
- Android开发之将Edittext输入弹出的软键盘设置搜索确定键。详细代码,已验证可用。
- Android 的 setTag
- Android 显示设置代码
- Android Studio快捷键
- Android动画设计(基础篇)