在Swift中,使用SDWebImage做缓存后获取缩略图的大小。
来源:互联网 发布:数据库高并发写入 编辑:程序博客网 时间:2024/06/04 01:09
//-----------------------------------------单张缓存照片----------------------------------------------
/// 单张图片缓存
///
/// - parameter array: 加载模型数组
private func cacheWebImage(array: [StatusViewModel],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.imageFromDiskCacheForKey(key){
size = image.size
}
//--------------------------------------------------------------简单的使用方式----------------------------------------------------------------------------
//加载零时数组 (添加尾随闭包类型)
self!.cacheWebImage(tempArray){
if max_id > 0 {
//上拉加载数据
self?.status += tempArray
}else{
//下拉加载数据
self?.status = tempArray + self!.status
}
}
0 0
- 在Swift中,使用SDWebImage做缓存后获取缩略图的大小。
- SDWebImage 获取缓存大小
- SDWebImage获取缓存大小,清除缓存
- Swift 中使用SDWebImage
- sdwebimage如何获取缓存大小以及清除缓存
- sdwebimage如何获取缓存大小以及清除缓存
- 设置SDWebImage中maxCacheSize动态管理图片内存缓存大小无效。maxCacheSize和maxMemoryCost的定义和使用。
- Android获取图片指定大小的缩略图--inJustDecodeBounds的使用
- 获取html中第一个图片的地址做缩略图
- SDWebImage缓存数据的获取/删除
- 在 Django 中使用 Redis 做缓存
- SDWebImage 获取缓存,清除缓存
- Android获取图片指定大小的缩略图
- Android获取图片指定大小的缩略图
- Android获取图片指定大小的缩略图
- Android获取图片指定大小的缩略图
- SDWebImage的运行机制以及缓存大小、有效时间设置
- SDWebImage 中简单的清除缓存
- Linux文件的复制、删除和移动命令
- 生成全排列算法详解
- python之len函数
- 《项目管理艺术》第七、八、九章读书摘要
- windows下安装多个tomcat服务(解决加入系统服务后不能同时开启多个tomcat)
- 在Swift中,使用SDWebImage做缓存后获取缩略图的大小。
- windows平台上将python源代码打包成exe
- Linux系统攻略 关于vi替换命令的使用说明
- 分析ICMP协议数据包格式
- 如何获取MySql的ADO连接字符串
- Android SharedPreferences 首次运行引导界面
- iReport-5.6.0之前版本无法启动的某些原因
- hibernate 一对多映射 懒加载
- Android复合自定义组件(几个基本组件组成的自定义组件)