Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6090546
  • 博文数量: 2759
  • 博客积分: 1021
  • 博客等级: 中士
  • 技术积分: 4091
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-11 14:14
文章分类

全部博文(2759)

文章存档

2019年(1)

2017年(84)

2016年(196)

2015年(204)

2014年(636)

2013年(1176)

2012年(463)

分类: Android平台

2015-06-04 06:32:39

原文地址:ImageLoader的加载机制 作者:landuochong

ImageLoader的加载机制
( ImageLoader工程详见:)

1. 先下载到sd卡,加载到内存,显示

2.内存中存储,形式
   String memoryCacheKey = MemoryCacheUtils.generateKey(uri, targetSize);
   所以不同大小和url的图片视为不同的Bitmap对象

3.在加载图片时,先获取ImageView的大小,获取大小为0,则使用Configuration中的最大大小,详见源码:ImageLoader-》displayImage()中
  ImageSize targetSize = ImageSizeUtils.defineTargetSizeForView(imageAware, configuration.getMaxImageSize())
  个人感觉,对于app中的较大图片,最好给定初始大小或者通过计算得到像素值,这样避免加载的图片较大,加速加载过程

4.当图片加载总大小大于一定值,将会移除列表,但是图片内存不一定会立即释放

5.由于Imageloader持有的图片大小+代码布局中或通过自己加载的方式加载的图片 总大小大于一定值会引起内存溢出或者图片加载失败,建议使用一套
图片加载机制。

6.布局中的图片最好代码中加载,不要直接写在布局中,界面销毁时最好解除关联引用,便于内存释放

阅读(1082) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~