首页 > 代码库 > 安卓简历技术点——熟练掌握ListView的优化及异步任务加载网络数据。
安卓简历技术点——熟练掌握ListView的优化及异步任务加载网络数据。
对于面试,可能listview这个问题,永远高频出现,毕竟开发中,他出现的也是高频的。 我先说下基本优化
listview优化
1.复用减少内存消耗---->convertView进行判断是否为空,不为空的时候,直接重新使用。为空的时候给他一个布局2.减少查找id的次数----->定义一个ViewHolder 存储控件,然后与convertView绑定起来
对于以上的两条如果说你能在项目中用到并且将Viewholder抽取到一个单独的类中进行复用,面试官对你看法会有所提高的。
继续吧 如果对于listview 数据量比较大的话 以上操作还是会出点问题的 比如图片处理 这一点 在下一节了,面试你也可以直接联合图片压缩 缓存进行显示 一起说
3.数据量大的情况下,我们可以使用分页加载 ,和分批加载
这时候 你要详细讲一下 分批加载的步骤了不然可能你想拿高工资有点难了。
Listview分批加载的实现思路:
最好的回答就是和你在简历上写的项目一起讲。
① 实现OnscrollLisTener 接口重写 OnScrollStateChanged和OnScroll方法,使用OnScroll进行滑动 ,检查是否有数据,如果有就addFooterView添加到adapter 记住刷一下如果没有了就把自定义的那个footer去掉,使用OnScrollStateChanged可以检测是否滚到最后一行,且停止滚动加载数据
异步任务加载网络数据
1.先从内存缓存中获取图片显示
2.获取不到再从sd中获取,
3.在获取不到就从网络中下载图片并保存在SD中,同时加入内存并且显示。
上面三个步骤 你如果可以讲详细点,可以将源码一点一点解释清楚 明天继续写 下一周去面试了....
安卓简历技术点——熟练掌握ListView的优化及异步任务加载网络数据。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。