欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Swift 中使用SDWebImage

程序员文章站 2022-06-01 10:47:16
...

SDWebImage是开发中常用的插件,主要用于加载外部图片,具有缓存图片资源的功能,然而SDWebImage是由Object-C所写。

步骤:

  1. 下载SDWebImage , https://github.com/rs/SDWebImage
  2. 4.0版本还需要下载FLAnimatedImage, https://github.com/Flipboard/FLAnimatedImage
  3. 将上面两个库中的源码加到你自己的项目中,如图Swift 中使用SDWebImage
  4. 添加一个Object-c和swift的桥接,新建一个头文件,名叫SDWebImage+Header.h ,添加SDWebImage头文件的引用,

    #ifndef SDWebImage_Header_h

    #define SDWebImage_Header_h

    #endif /* SDWebImage_Header_h */

    #import "UIImageView+WebCache.h"

添加bridging headerSwift 中使用SDWebImageOther Link flags处添加 -ObjC使用代码如下
 let imageURL = URL.init(string: "http://www.szplanner.com/images/inside/product_activity_thumb.jpg")
        
SDWebImageManager.shared().loadImage(with: imageURL, options: SDWebImageOptions.highPriority, progress: {(receivedSize:Int,expectedSize:Int,targetURL:URL?)->Void in
            
       let pro = Float(receivedSize)/Float(expectedSize)*100
       print("进度..\(pro)%")
            
 }, completed: { ( image:UIImage?,data:Data?, error:Error? ,cacheType:SDImageCacheType, finished:Bool,url:URL?) -> Void in
            
      if let img = image {
           self.imgView = UIImageView(image: img)
           self.view.addSubview(self.imgView)
      }
})



相关标签: swift 图片