通过AlamofireImage下载UIImage?

时间:2017-09-13 13:42:13

标签: ios swift alamofire alamofireimage

我有一个网址,想要通过返回功能下载图像,但是我无法让它正确配合,这是我的功能:

{{1}}

我传入了URL,并希望从alamofire响应返回一个UIImage。

但是我得到了

  

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

表示返回声明。

我怎样才能正确实现这一目标?

1 个答案:

答案 0 :(得分:6)

您可以使用以下功能下载图像:

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