Baixando UIImage via AlamofireImage?

Eu tenho uma URL e quero baixar a imagem através de uma function de retorno, no entanto eu não consigo fazê-lo cooperar corretamente, aqui está o meu 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") } } } 

Eu passo a URL e quero que uma UIImage retorne da resposta do alamofire.

Mas eu recebo

Valor de retorno inesperado não-cancelado na function void

para a declaração de retorno.

Como posso conseguir isso corretamente?

Você pode usar a function abaixo para baixar a imagem:

 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) } } } 

Usos

 getImage("http://") { (image) in if image != nil { print(image) } } 

Ou

Se você quiser definir a imagem no UIImageView use a extensão 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. } 
Intereting Posts