2020-7-24:RecyclerView使用心得
程序员文章站
2022-06-24 18:48:07
最近优化收藏界面,收藏列表适配器采用RecyclerView,由于界面卡顿及不能多个文件同时下载,所以对其进行优化。界面卡顿原因: 主要是在onBindViewHolder中进行了耗时操作,计算文件MD5值,改为在Activity中处理。不能多个文件同时下载: 文件监听器加在了Adapter文件上,这样只能监听一个item的文件进度,并展示在界面上。将文件监听器改为加在CollectHolder上,并且在onBindViewHolder方法中通过某个holder的......
最近优化收藏界面,收藏列表适配器采用RecyclerView,由于界面卡顿及不能多个文件同时下载,所以对其进行优化。
界面卡顿原因:
主要是在onBindViewHolder中进行了耗时操作,计算文件MD5值,改为在Activity中处理。
不能多个文件同时下载:
文件监听器加在了Adapter文件上,这样只能监听一个item的文件进度,并展示在界面上。将文件监听器改为加在CollectHolder上,并且在onBindViewHolder方法中通过某个holder的set方法,将filemessage信息赋给某个holder。
((CollectHolder) holder).setFileMessage(message);
注意:holder是不断复用的,因此在将filemessage信息赋给某个holder之前判断这个holder是不是已经被setMessage了,如果已经有了要移除该filemessage的监听。
这样监听文件传输时针对不同holder,拿到不同布局,从而展示多个文件下载进度。
本文地址:https://blog.csdn.net/wuhao5211314/article/details/107561244
上一篇: Tomcat的类加载机制流程及源码解析
下一篇: Wi-Fi模块选型参考
推荐阅读
-
Android如何使用RecyclerView打造首页轮播图
-
android使用ItemDecoration给RecyclerView 添加水印
-
RecyclerView进阶:使用ItemTouchHelper实现拖拽和侧滑删除效果
-
Android RecyclerView基本使用详解
-
Java的wait(), notify()和notifyAll()使用心得
-
Android如何使用RecyclerView打造首页轮播图
-
android使用ItemDecoration给RecyclerView 添加水印
-
Android使用分类型RecyclerView仿各大商城首页
-
分享Android中pullToRefresh的使用心得
-
Android使用分类型RecyclerView仿各大商城首页