美文网首页
SDWebImage使用

SDWebImage使用

作者: 暖光照 | 来源:发表于2016-10-06 00:47 被阅读0次

    导入头文件

      #import "UIImageView+WebCache.h"
    

    使用方式

    //图片缓存并显示
    [self.imageView sd_setImageWithURL:URL];
    
    
    //带完成调用的block
    [self.imageView sd_setImageWithURL:URL   completed:^(UIImage   *image,   NSError   *error,   SDImageCacheType   cacheType,   NSURL   *imageURL)   {
       
    }];
    
    
    //使用占为图片
    [self.imageView   sd_setImageWithURL:URL   placeholderImage:[UIImage   imageNamed:@"IMG_0700"]];
    
    
    //使用占为图片并带完成block
    [self.imageView   sd_setImageWithURL:URL   placeholderImage:[UIImage   imageNamed:@"IMG_0700"]   completed:^(UIImage   *image,   NSError   *error,   SDImageCacheType   cacheType,   NSURL   *imageURL)   {
        
    }];
    
    
    //options 选择方式
    [self.imageView   sd_setImageWithURL:URL   placeholderImage:[UIImage   imageNamed:@"IMG_0700"]   options:SDWebImageRetryFailed];
    

    options选项

      //默认情况下,如果一个url在下载的时候失败了,那么这个url会被加入黑名单并且library不会尝试再次下载,
      //这个flag会阻止library把失败的url加入黑名单(简单来说如果选择了这个flag,那么即使某个url下载失败了,sdwebimage还是会尝试再次下载他.)
      SDWebImageRetryFailed   =   1   <<   0,
       
      // 默认情况下,图片会在交互发生的时候下载(例如你滑动tableview的时候),这个flag会禁止这个特性,导致的结果就是在scrollview减速的时候
      // 才会开始下载(也就是你滑动的时候scrollview不下载,你手从屏幕上移走,scrollview开始减速的时候才会开始下载图片)
      SDWebImageLowPriority   =   1   <<   1,
       
      //只进行内存缓存
      SDWebImageCacheMemoryOnly   =   1   <<   2,
       
      //这个标志可以渐进式下载,显示的图像是逐步在下载
      SDWebImageProgressiveDownload   =   1   <<   3,
       
      //即使一个图片缓存了,还是会重新请求.
      SDWebImageRefreshCached   =   1   <<   4,
       
      //后台下载
      SDWebImageContinueInBackground   =   1   <<   5,
       
      //NSMutableURLRequest.HTTPShouldHandleCookies   =   YES;
      //可以控制存在NSHTTPCookieStore的cookies.(没用过)
      SDWebImageHandleCookies   =   1   <<   6,
       
      //允许使用无效的SSL证书
      //SDWebImageAllowInvalidSSLCertificates   =   1   <<   7,
       
      //优先下载
      SDWebImageHighPriority   =   1   <<   8,
       
      //延迟占位符
      SDWebImageDelayPlaceholder   =   1   <<   9,
       
      //(是否是图片有可能方向不对需要调整方向?)
      SDWebImageTransformAnimatedImage   =   1   <<   10,
    

    原理

    SDWebImage原理图.jpg

    补充

      SDWebImage默认的是内存+沙盒缓存。

    相关文章

      网友评论

          本文标题:SDWebImage使用

          本文链接:https://www.haomeiwen.com/subject/daheyttx.html