- 3
- 0
- 约6.98千字
- 约 4页
- 2017-02-16 发布于江苏
- 举报
【无限互联】SDWebImage图片缓存流程分析【DOC精选】
【无限互联】SDWebImage图片缓存流程分析
SDWebImage是一个功能很强大的缓存网络图片的框架。框架实现了异步加载网络图片、自动缓存图片数据等功能。以UIImageView加载网络图片为例,对其总体的加载图片流程做一个大致的分析。 首先使用SDWebImage先要导入 #import UIImageView+WebCache.h文件,设置网络图片的图片地址就可以加载图片。
[objc] view plaincopyprint?
NSURL *url = [NSURL URLWithString:@/imag1e03d003478ec54e736d196f9.jpg];
[imageView setImageWithURL:url];
NSURL *url = [NSURL URLWithString:@/imag1e03d003478ec54e736d196f9.jpg];
[imageView setImageWithURL:url];
根据网络图片地址,SDWebImageManager类提供了方法downloadWithURL加载图片
[objc] view plaincopyprint?
id SDWebImageOperation operation = [SDWebImageManager.sharedManager downloadWithURL:url options:options progress:progressBlock completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished) {
if (!wself) return;
dispatch_main_sync_safe(^{
if (!wself) return;
if (image) {
wself.image = image;
[wself setNeedsLayout];
}
if (completedBlock finished) {
completedBlock(image, error, cacheType);
}
});
}];
objc_setAssociatedObject(self, operationKey, operation, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
id SDWebImageOperation operation = [SDWebImageManager.sharedManager downloadWithURL:url options:options progress:progressBlock completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, BOOL finished) {
if (!wself) return;
dispatch_main_sync_safe(^{
if (!wself) return;
if (image) {
wself.image = image;
[wself setNeedsLayout];
}
if (completedBlock finished) {
completedBlock(image, error, cacheType);
}
});
}];
objc_setAssociatedObject(self, operationKey, operation, OBJC_ASSOCIATION_RETAIN_NONATOMIC);
}
进入downloadWithURL方法,由SDImagerCache类提供方法queryDiskCacheForKey检查内存中是否有图片缓存,如果有图片缓存,回调block将图片数据传递给SDWebImageManger类。SDWebImageMange类回调block将图片数据传递给UIImageView+WebCache类去显示图片。
[objc] view plaincopyprint?
UIImage *image = [self imageFr
您可能关注的文档
- 【教务管理员操作流程】【DOC精选】.doc
- 【教案二】..三角形的边【DOC精选】.doc
- 【操作技巧】教你如何绘制立体图【DOC精选】.doc
- 【放射科】正确X线摄影体位的评价标准和质控要点【DOC精选】.doc
- 【散热设计讲座】常用词汇和三种传热方式【DOC精选】.doc
- 【教程】 xp系统安装全攻略~(光盘安装~不会装XP的进来)【DOC精选】.doc
- 【教师必备用书】届高三地理一轮复习: 必修 . 可持续发展的基本内涵 协调人地关系的主要途径【DOC精选】.doc
- 【数学文】届高考模拟题(课标)分类汇编:算法初步与复数【DOC精选】.doc
- 【新航道】阅读笔记【DOC精选】.doc
- 【数学文】算法初步与复数【DOC精选】.doc
原创力文档

文档评论(0)