下载图像 获取大小
1)downloadImage 是 SDWebImage的核心方法
2)图像下载完成之后,会自动保存在沙盒中,文件路径是URL的md5
3)如果沙盒中已经存在缓存的图像,后续使用SD 通过URL加载图像,都会加载本地沙盒的图像
4)不会发起网络请求,同时回调方法同样会调用
5)方法还是同样的方法,调用还是同样的调用,不过内部不会再次发起网络请求!
SDWebImageManager.shared().imageDownloader?.downloadImage(with: url, options: [], progress: nil, completed: { (image, _, _, _) in
print("图片\(image!)")
})
注意:
1.如果要缓存的图像很大,找后台要接口
2.如果配合表格使用需要配合调度组使用确保获得大小之后刷新表格
1)初始化调度组
let group = DispatchGroup()
2)执行SDwebImage方法前入组
group.enter()
3)下载完成出组
group.leave()
4)方法后监听调度组情况
group.notify(queue: DispatchQueue.main) {
在这里完成回调
}
网友评论