SDWebImage手动清除缓存的方法
1.找到SDImageCache类
2.添加如下方法:
- - (float)checkTmpSize
 - {
 - float totalSize = 0;
 - NSDirectoryEnumerator *fileEnumerator = [[NSFileManager defaultManager] enumeratorAtPath:diskCachePath];
 - for (NSString *fileName in fileEnumerator)
 - {
 - NSString *filePath = [diskCachePath stringByAppendingPathComponent:fileName];
 - NSDictionary *attrs = [[NSFileManager defaultManager] attributesOfItemAtPath:filePath error:nil];
 - unsigned long long length = [attrs fileSize];
 - totalSize += length / 1024.0 / 1024.0;
 - }
 - // NSLog(@"tmp size is %.2f",totalSize);
 - return totalSize;
 - }
 
- (float)checkTmpSize
{
    float totalSize = 0;
    NSDirectoryEnumerator *fileEnumerator = [[NSFileManager defaultManager] enumeratorAtPath:diskCachePath];
    for (NSString *fileName in fileEnumerator)
    {
        NSString *filePath = [diskCachePath stringByAppendingPathComponent:fileName];
        NSDictionary *attrs = [[NSFileManager defaultManager] attributesOfItemAtPath:filePath error:nil];
        unsigned long long length = [attrs fileSize];
        totalSize += length / 1024.0 / 1024.0;
    }
//    NSLog(@"tmp size is %.2f",totalSize);
    return totalSize;
}
3.在设置里这样使用
- #pragma 清理缓存图片
 - - (void)clearTmpPics
 - {
 - [[SDImageCache sharedImageCache] clearDisk];
 - // [[SDImageCache sharedImageCache] clearMemory];//可有可无
 - DLog(@"clear disk");
 - float tmpSize = [[SDImageCache sharedImageCache] checkTmpSize];
 - NSString *clearCacheName = tmpSize >= 1 ? [NSString stringWithFormat:@"清理缓存(%.2fM)",tmpSize] : [NSString stringWithFormat:@"清理缓存(%.2fK)",tmpSize * 1024];
 - [configDataArray replaceObjectAtIndex:2 withObject:clearCacheName];
 - [configTableView reloadData];
 - }
 
                    
                
                
            
        
浙公网安备 33010602011771号