通过 AlamofireImage 下载 UIImage?
Downloading UIImage via AlamofireImage?
我有一个 URL 并想通过 return 函数下载图像,但是我无法让它正常工作,这是我的函数:
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 响应中 return 编辑一个 UIImage。
但是我明白了
Unexpected non-void return value in void function
对于 return 语句。
我怎样才能正确地做到这一点?
您可以使用以下功能下载图片:
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.
}
我有一个 URL 并想通过 return 函数下载图像,但是我无法让它正常工作,这是我的函数:
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 响应中 return 编辑一个 UIImage。
但是我明白了
Unexpected non-void return value in void function
对于 return 语句。
我怎样才能正确地做到这一点?
您可以使用以下功能下载图片:
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.
}