通过AlamofireImage下载UIImage?

我有一个URL,并希望通过返回函数下载图像,但是我不能得到它配合正确,这是我的function:

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。

但是我得到了

void函数中意外的非void返回值

为回报声明。

我怎样才能做到这一点?

您可以使用下面的function下载图像:

 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 let imageURL = URL(string: "http://"), let placeholder = UIImage(named: "default") { imageView.af_setImage(withURL: imageURL, placeholderImage: placeholder) //set image automatically when download compelete. }