通过AlamofireImage下载UIImage? [英] Downloading UIImage via AlamofireImage?
本文介绍了通过AlamofireImage下载UIImage?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个网址,想要通过返回功能下载图片,但我不能让它合作正常,这是我的功能:
I have a URL and want to download the image via a return function, however I cant get it to cooperate properly, here is my func:
func getTabImage(url: URL) -> UIImage {
Alamofire.request(url)
.responseImage { response in
if let image = response.result.value {
return image
} else {
print("Failed to get image")
}
}
}
我传入了URL,并希望从alamofire响应返回一个UIImage。
I pass in the URL, and want a UIImage returned from the alamofire response.
但是我得到了
void函数中出现意外的非void返回值
Unexpected non-void return value in void function
返回语句。
如何才能正确实现此目的?
How can i achieve this correctly?
推荐答案
您可以使用以下功能下载图片:
You can use the below function for downloading the image:
func getImage(_ url:String,handler: @escaping (UIImage?)->Void) {
print(url)
Alamofire.request(url, method: .get).responseImage { response in
if let data = response.result.value {
handler(data)
} else {
handler(nil)
}
}
}
使用
getImage("http://") { (image) in
if image != nil {
print(image)
}
}
或
如果要在 UIImageView
上设置图像,请使用 AlamofireImage 。
If you want to set the image on UIImageView
use extension of AlamofireImage.
if let imageURL = URL(string: "http://"), let placeholder = UIImage(named: "default") {
imageView.af_setImage(withURL: imageURL, placeholderImage: placeholder) //set image automatically when download compelete.
}
这篇关于通过AlamofireImage下载UIImage?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文