关于SDWebImage缓存问题
2015-11-10 14:29
316 查看
使用SDWebImage 请求图片数据,会产生相应的缓存
//这是用于显示缓存大小
调用方法:[self filePath]; 即可获得当前缓存大小
// 显示缓存大小
- ( float )filePath
{
NSString * cachPath = [NSSearchPathForDirectoriesInDomains (NSCachesDirectory
, NSUserDomainMask ,YES )firstObject ];
return [selffolderSizeAtPath :cachPath];
}
//1:首先我们计算一下单个文件的大小
- ( longlong ) fileSizeAtPath:(NSString *) filePath{
NSFileManager * manager = [NSFileManagerdefaultManager ];
if ([managerfileExistsAtPath :filePath]){
return [[managerattributesOfItemAtPath :filePatherror :
nil ]fileSize ];
}
return0 ;
}
//2: 遍历文件夹获得文件夹大小,返回多少 M(提示:你可以在工程界设置()m)
- ( float ) folderSizeAtPath:(NSString *) folderPath{
NSFileManager * manager = [NSFileManagerdefaultManager ];
if (![managerfileExistsAtPath :folderPath])return
0 ;
NSEnumerator *childFilesEnumerator = [[managersubpathsAtPath :folderPath]objectEnumerator
];
NSString * fileName;
longlong folderSize =0 ;
while ((fileName = [childFilesEnumeratornextObject ]) !=nil ){
NSString * fileAbsolutePath = [folderPathstringByAppendingPathComponent :fileName];
folderSize += [ selffileSizeAtPath :fileAbsolutePath];
}
return folderSize/(1024.0 *1024.0 );
}
//清理缓存调用的方法
//清理缓存
[[SDImageCachesharedImageCache]clearDisk];//清理磁盘
[[SDImageCachesharedImageCache]clearMemory];//清理内存
//这是用于显示缓存大小
调用方法:[self filePath]; 即可获得当前缓存大小
// 显示缓存大小
- ( float )filePath
{
NSString * cachPath = [NSSearchPathForDirectoriesInDomains (NSCachesDirectory
, NSUserDomainMask ,YES )firstObject ];
return [selffolderSizeAtPath :cachPath];
}
//1:首先我们计算一下单个文件的大小
- ( longlong ) fileSizeAtPath:(NSString *) filePath{
NSFileManager * manager = [NSFileManagerdefaultManager ];
if ([managerfileExistsAtPath :filePath]){
return [[managerattributesOfItemAtPath :filePatherror :
nil ]fileSize ];
}
return0 ;
}
//2: 遍历文件夹获得文件夹大小,返回多少 M(提示:你可以在工程界设置()m)
- ( float ) folderSizeAtPath:(NSString *) folderPath{
NSFileManager * manager = [NSFileManagerdefaultManager ];
if (![managerfileExistsAtPath :folderPath])return
0 ;
NSEnumerator *childFilesEnumerator = [[managersubpathsAtPath :folderPath]objectEnumerator
];
NSString * fileName;
longlong folderSize =0 ;
while ((fileName = [childFilesEnumeratornextObject ]) !=nil ){
NSString * fileAbsolutePath = [folderPathstringByAppendingPathComponent :fileName];
folderSize += [ selffileSizeAtPath :fileAbsolutePath];
}
return folderSize/(1024.0 *1024.0 );
}
//清理缓存调用的方法
//清理缓存
[[SDImageCachesharedImageCache]clearDisk];//清理磁盘
[[SDImageCachesharedImageCache]clearMemory];//清理内存
相关文章推荐
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 峰回路转,Firefox 浏览器即将重返 iOS 平台
- 不可修补的 iOS 漏洞可能导致 iPhone 4s 到 iPhone X 永久越狱
- iOS 12.4 系统遭黑客破解,漏洞危及数百万用户
- 每日安全资讯:NSO,一家专业入侵 iPhone 的神秘公司
- [转][源代码]Comex公布JailbreakMe 3.0源代码
- Enterprise Library for .NET Framework 2.0缓存使用实例
- PowerShell中编程清空IE缓存方法
- PowerShell中使用.NET将程序集加入全局程序集缓存
- C#中缓存的基本用法总结
- wap开发中如何有效的利用缓存减少消息的传送量
- PHP基于文件存储实现缓存的方法
- smarty缓存用法分析
- 引用全局程序集缓存内的程序集的方法
- asp Response.flush 实时显示进度
- C#实现清除IE浏览器缓存的方法
- ASP.NET缓存管理的几种方法
- PHP文件缓存类实现代码
- 清除aspx页面缓存的程序实现方法