SDWebImage 里面给 UIImageView 加载图片的逻辑
2016-11-07 17:25
941 查看
1> SDWebImage中为UIImageView 提供了一个分类 UIImageView+WebCache.h, 这个分类中有一个最常用的接口 sd_setImageWithURL:placeholderImage:,会在真实图片出现前会先显示占位图片,当真实图片被加载出来后在替换占位图片。
2> 加载图片的过程大致如下:
1)、首先会在 SDWebImageCache 中寻找图片是否有对应的缓存,它会以 url 作为数据的索引先在内存中寻找是否有对应的缓存。
2)、如果缓存未找到就会利用通过 MD5 处理过的 key 来继续在磁盘中查询对应的数据,如果找到了, 就会把磁盘中的数据加载到内存中,并将图片显示出来。
3)、如果在内存和磁盘缓存中都没有找到,就会向远程服务器发送请求,开始下载图片,下载后的图片会加入缓存中,并写入磁盘中。整个获取图片的过程都是在子线程中执行,获取到图片后回到主线程将图片显示出来。
相关文章推荐
- iOS(9) SDWebImage 里面给 UIImageView 加载图片的逻辑是什么样的
- ASIHttpRequest或者SDWebImage给UIImageView加载图片的逻辑是什么样子的
- 1.用SDWebImage为UIImageView加载图片时遇到的问题
- iOS开发使用sdWebImage实现对tableView的cell加载图片淡入动画
- sdwebImageview 在https 中不能加载图片时解决方法
- iOS tableview SDWebImage加载多张图片内存警告(received memory warning)
- UIImage 加载图片及SDWebimage的简单使用介绍
- UI一揽子计划 21 (UICollectionView、SDWebImage第三方类库加载图片的使用、集合视图的布局UICollectionViewFlowLayout 、自定义Cell、布局协议
- 使用SDWebImageView加载gif图片
- 使用sdWebImage实现对tableView的cell加载图片淡入淡出效果
- SDWebImage设置UIImageView/UIButton的图片尺寸
- 基于SDWebImage的网络图片加载处理 & 获取网络中得UIimage
- SDWebImage 如何为 UIImageView 添加图片
- SDWebImage在UITableView部分CELL图片无法加载的解决办法
- iOS-OC-tableview SDWebImage加载多张图片内存警告(received memory warning)
- ios 异步加载图片结合tableView SDWebImage
- SDWebImage使用——一个可管理远程图片加载的类库
- SDWebImage一个可管理远程图片加载的类库
- 怎样使用异步加载图片的库SDWebImage
- ios 异步加载图片的框架(SDWebImage)