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; } 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]; }
转载于:https://www.cnblogs.com/pengjuwang/p/5080314.html