Glide加载图片OutOfMemory
来源:互联网 发布:linux查看磁盘剩余空间 编辑:程序博客网 时间:2024/06/06 03:25
Glide是常用的图片加载框架,不仅支持加载网络图片还支持加载本地图片,功能强大,接口友好。但是使用不好也会出问题
这次的问题是加载图片的分辨率问题,如果设置不当,Glide会加载全分辨率的图片,而现在相机拍照都是好几M的,图片一多就很容易OOM。
具体情形
ListView通过拍照获取并加载多张图片
- 显示图片的ImageView
<ImageView android:id="@+id/iv_image" android:layout_width="match_parent" android:layout_height="match_parent" android:scaleType="fitXY"/>//这里是关键
- Glide加载图片的地方
Glide.with(context).load(imageBean.getUrl()).into(imageView);
- 内存的变化
以上就是OOM情形再现,通过内存的变化我们可以看出,每次通过拍照增加一张图片,内存就相应增加图片的大小,没有优化。比如图片是7M,内存就会增加7M,这样显然是不行的
问题原因
当ImageView的scaleType设置为fitXY时,Glide会加载全分辨率的图片,尽管ImageView就那么大。
问题解决
有2种选择
- 更改ImageView的scaleType,比如改成fitCenter或者centerCrop
- 或者加载的时候改为
Glide.with(context).load(carImageBean.getUrl()).fitCenter().into(imageView);
没错,加个fitCenter()就行了
以上基于glide:3.7.0
阅读全文
0 0
- Glide加载图片OutOfMemory
- 图片加载库Glide
- Android Glide 图片加载
- Glide加载图片
- 图片加载库Glide
- 图片加载库Glide
- 图片加载框架Glide
- Glide图片加载
- Glide图片加载
- Glide 加载图片变形
- Glide加载图片
- Glide 图片加载
- glide 图片加载
- Glide加载图片类型
- Glide图片加载
- 使用glide加载图片
- Glide图片加载
- Glide加载https图片
- 搭建Jetbrains授权idea服务器
- FTP基于PAM和MySQL/MariaDB实现虚拟用户访问控制
- PixHawk学习笔记 之 源码浅析—mc_pos_control.cpp 子程序合集
- jquery实现jsp页面报警
- Swfit4.0中JSON与模型原生互转(JSONEncoder/JSONDecoder的使用)
- Glide加载图片OutOfMemory
- flex布局
- js对象生成与调用
- SQLServer中跨服务器跨数据库之间的数据操作
- 免费视频平台
- 图片与视频的选择器
- 【UI】优秀的网站欣赏以及分析
- 检测iOS的APP性能的一些方法
- 前端写代码的思路