使用Glide的一个优化
来源:互联网 发布:新媒体矩阵建设方案 编辑:程序博客网 时间:2024/06/01 10:34
使用Glide的一个优化
Glide.with(context).resumeRequests();Glide.with(context).pauseRequests();
可以借鉴
滚动加载,不滚动时不加载,提高listview效率
@Overridepublic void onScrollStateChanged(AbsListView view, int scrollState) { switch (scrollState){ case SCROLL_STATE_FLING: Log.i("ListView","用户在手指离开屏幕之前,由于滑了一下,视图仍然依靠惯性继续滑动"); Glide.with(getApplicationContext()).pauseRequests(); //刷新 break; case SCROLL_STATE_IDLE: Log.i("ListView", "视图已经停止滑动"); Glide.with(getApplicationContext()).resumeRequests(); break; case SCROLL_STATE_TOUCH_SCROLL: Log.i("ListView","手指没有离开屏幕,视图正在滑动"); Glide.with(getApplicationContext()).resumeRequests(); break; }}借鉴:http://blog.csdn.net/libra_louis/article/details/55517568因为Adapter对View的复用以及图片网络请求的耗时问题有时候在快速滑动且网络不佳的情况下会出现图片加载错乱。 即滑动到屏幕内发出网络请求,但并未请求完成就已滑出屏幕,待到请求完成时,就加载到了其它ItemView上。
但是当我们使用Glide做图片加载的时候这么设置会出现You must not call setTag() on a view Glide is targeting 错误提示。 此时我们只需要通过setTag(key,object)来进行设置即可:
String title = dataBean.getTitle(); String uri = dataBean.getThumbnail_pic_s(); holder.mImgContentItem.setTag(R.id.imageid,uri); if(holder.mImgContentItem.getTag(R.id.imageid)!=null&&uri==holder.mImgContentItem.getTag(R.id.imageid)){ Glide.with(mContext).load(uri).into(holder.mImgContentItem); holder.mTextContentItem.setText(title); }
- 1
- 2
- 3
- 5
- 6
注意:setTag内第一个参数key,必须是resource资源,只需在res-value内建立一个ids.xml即可,内部代码:
<?xml version="1.0" encoding="utf-8"?><resources> <item name="imageid" type="id"/></resources>
- 1
- 2
- 3
阅读全文
0 0
- 使用Glide的一个优化
- Yelp app是如何使用Glide优化图片加载的
- Yelp app是如何使用Glide优化图片加载的
- Yelp app是如何使用Glide优化图片加载的
- Android - Glide的使用
- Android - Glide的使用
- Glide 的基本使用
- Glide的简单使用
- Glide的使用
- Glide的使用
- Glide的简单使用
- Glide的使用
- Glide的使用
- glide的基本使用
- Glide的使用详解
- Glide的使用
- Glide的使用大全
- Glide的使用
- 你好
- Java集合框架面试
- JAVA---线程
- 【Android自定义View】仿Photoshop取色器ColorPicker(四)完结篇
- JAVA获取服务器路径的方法
- 使用Glide的一个优化
- ZooKeeper server连接状态
- 《HTML5权威指南》之使用边框和背景
- protobuf lua 版注意点
- 【机器学习-西瓜书】三、线性回归;对数线性回归
- 横向菜单和xlistview
- 如何用化学软件绘制制高分子链
- Tips of Lua
- 阿里云CentOS 7.3安装Redis3.2.6详细步骤(自己有修改)