我有一个网址,并希望通过复位功能下载图像,但是,我不能得到正常的合作,这是我的FUNC:通过AlamofireImage下载UIImage?
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,并且希望一个UIImage从返回alamofire的回应。
但我得到空隙功能
为return语句
意外的非空返回值。
我该如何正确实现?
'return image'那不行,因为这个调用是异步的。改为使用闭包。已经有很多问题了,请查找“Swift + Closure + Async”。对于错误信息(一旦你做了关闭事件就应该消失),这是因为你说过“ - > UIImage”,但是如果“if let image”没有返回任何东西。此外,在该方法结束时,您也不会返回任何内容。 – Larme
链接的例子是为URLSession,但这是完全一样的想法。给你的方法包装器签名添加一个回调,然后将它与值一起使用来检索(例子中的字符串,但可以是任何)。 – Moritz
@Moritz他明确要求**通过AlamofireImage下载UIImage **不会被标记为重复https://stackoverflow.com/questions/31264172/how-can-i-get-the-data-from-nsurlsession-sharedsession -datataskwithrequest可能是重复的,但这个问题与你标记的问题不同! –