最近项目中需要用到网络图片加载,在网上找了很多图片加载的文章,不过感觉都不怎么方便。后来找到 AlamofireImage这个库,使用起来非常简单,readme也非常清晰,记录一下使用过程,希望帮到需要的人,本文代码使用的是AlamofireImage 3.3版本。优点 使用简单,两行代码加载网络图片 自动缓存,加载过的图片,在没网络的时候仍然可以显示。 有一些常用的扩展,方便对图片进行 *** 作。 导入
//使用cocoapods导入 pod 'AlamofireImage','~> 3.3'使用
真的非常简单,两行代码搞定(记得要 import AlamofireImage)
let imageVIEw = UIImageVIEw(frame: frame)let url = URL(string: "https://httpbin.org/image/png")!imageVIEw.af_setimage(withURL: url)
设置默认图片:
let imageVIEw = UIImageVIEw(frame: frame)let url = URL(string: "https://httpbin.org/image/png")!let placeholderImage = UIImage(named: "placeholder")!imageVIEw.af_setimage(withURL: url,placeholderImage: placeholderImage)
对图片进行缩放:
let image = UIImage(named: "unicorn")!let size = CGSize(wIDth: 100.0,height: 100.0)let scaledImage = image.af_imageScaled(to: size)let aspectScaledToFitimage = image.af_imageAspectScaled(toFit: size)let aspectScaledToFillimage = image.af_imageAspectScaled(toFill: size)
圆形图片:
let image = UIImage(named: "unicorn")!let radius: CGfloat = 20.0let roundedImage = image.af_imageRounded(withCornerRadius: radius)let circularImage = image.af_imageRoundedIntoCircle()扩展
虽然使用AlamofireImage加载图片已经非常简单,不过每次需要加载网络图片都需要导包,并且图片要求传URL,所以我们可以做一些简单的扩展。
import AlamofireImageextension UIImageVIEw{ func setimageUrl(_ string : String?) { if(string != nil){ let url = URL(string: string!)! self.af_setimage(withURL: url) } }}//使用userimgImage.setimageUrl("https://httpbin.org/image/png")注意
在AlamofireImage的readme中,提到一下用法,其中responseImage已经被废弃,可能无法使用。在源码中可以看到@discardableResult
标记
Alamofire.request("https://httpbin.org/image/png").responseImage { response in deBUGPrint(response) print(response.request) print(response.response) deBUGPrint(response.result) if let image = response.result.value { print("image downloaded: \(image)") }}内容参考
AlamofireImage 官方README
总结以上是内存溢出为你收集整理的AlamofireImage 使用 - swift加载网络图片,缩放图片,生成圆形图片全部内容,希望文章能够帮你解决AlamofireImage 使用 - swift加载网络图片,缩放图片,生成圆形图片所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)