zoukankan      html  css  js  c++  java
  • iOS中 SDWebImage手动清除缓存的方法 技术分享

    1.首先要找到SDImageCache类、才可以以下的方法


    2.添加如下方法:

    [objc] view plaincopy
     
    1. - (float)checkTmpSize    
    2. {    
    3.     float totalSize = 0;    
    4.     NSDirectoryEnumerator *fileEnumerator = [[NSFileManager defaultManager] enumeratorAtPath:diskCachePath];    
    5.     for (NSString *fileName in fileEnumerator)    
    6.     {    
    7.         NSString *filePath = [diskCachePath stringByAppendingPathComponent:fileName];    
    8.     
    9.         NSDictionary *attrs = [[NSFileManager defaultManager] attributesOfItemAtPath:filePath error:nil];    
    10.     
    11.         unsigned long long length = [attrs fileSize];    
    12.     
    13.         totalSize += length / 1024.0 / 1024.0;    
    14.     }    
    15. //    NSLog(@"tmp size is %.2f",totalSize);    
    16.     
    17.     return totalSize;    
    18. }  


    新版的SDImageCache类,已增加此方法

    [objc] view plaincopy
     
    1. [[SDImageCache sharedImageCache] getSize];    


    3.在设置里这样使用

    [objc] view plaincopy
     
      1. #pragma 清理缓存图片    
      2.     
      3. - (void)clearTmpPics    
      4. {    
      5.     [[SDImageCache sharedImageCache] clearDisk];    
      6.     
      7. //    [[SDImageCache sharedImageCache] clearMemory];//可有可无    
      8.     
      9.     DLog(@"clear disk");        
      10.     
      11.     float tmpSize = [[SDImageCache sharedImageCache] checkTmpSize];    
      12.     
      13.     NSString *clearCacheName = tmpSize >= 1 ? [NSString stringWithFormat:@"清理缓存(%.2fM)",tmpSize] : [NSString stringWithFormat:@"清理缓存(%.2fK)",tmpSize * 1024];    
      14.     
      15.     [configDataArray replaceObjectAtIndex:2 withObject:clearCacheName];    
      16.     
      17.     [configTableView reloadData];    
      18. }    
  • 相关阅读:
    悼念丹尼斯·里奇,那个给乔布斯提供肩膀的巨人(转载)
    c# 做成Windows服务
    Visual Studio 2010 新建完项目编译就出错
    C#调用Win32 的API函数User32.dll
    c# Remoting小例子
    backgroundworker使用 实现进度条ProgressBar
    winform最小化后隐藏到右下角,单击或双击后恢复
    关于Thread的实例
    c# 捕获的异常写到日志里
    C# delegate and event 规范写法
  • 原文地址:https://www.cnblogs.com/Yishu/p/4890974.html
Copyright © 2011-2022 走看看