//-----------------------------------------单张缓存照片---------------------------------------------- /// 单张
图片缓存 /// /// - p
arameter array: 加载模型数组 private func cacheWebImage(array: [Status
viewmodel],finished:()->()){ //创建调度组 let group =
dispatch_group_create() //记录 var dataLenth = 0 for
viewmodel in array{ // .thumbnailRULs 这里面存放的是很多
图片的url let count =
viewmodel.thumbnailRULs?.count ?? 0 //不等于1,执行下
一个循环 if count != 1{ continue }
dispatch_group_enter(group) SDWebImageManager.sharedManager().downloadImageWithURL(
viewmodel.thumbnailRULs![0],options: [],progress: nil,completed: { (image,_,_ ) -> Void in //
图片缓存完成,但是
图片不一定有image if image != nil { // 将image转成二进制数据 let data = UIImagePNGRepresentation(image) dataLenth += data!.length } //
dispath_group_leave 要放到闭包的最后,才能够正确的测试出。
dispatch_group_leave(group) }) } //调度组回到主队列
dispatch_group_notify(group,
dispatch_get_main_queue()) { () -> Void in printLog("
图片缓存大小 \(dataLenth/1024)k") //执行闭包 finished() } } //-----------------------------------------取出缓存照片---------------------------------------------- //2判断
图片是否已经正确的缓存Key let key = statusViewModle!.thumbnailRULs![0].absoluteString if let image = SDWebImageManager.sharedManager().imageCache.imageFrom
diskCacheForKey(key){ size = image.size } //--------------------------------------------------------------简单的使用方式---------------------------------------------------------------------------- //加载零时数组 (
添加尾随闭包类型) self!.cacheWebImage(tempArray){ if max_id > 0 { //上拉加载数据 self?.status += tempArray }else{ //下拉加载数据 self?.status = tempArray + self!.status } }
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。