使用 Alamofire 下载图片时出错
error when using Alamofire to download an image
尝试使用 Alamofire 修复现有项目,但出现错误。
有问题的代码是:
Alamofire.request(.GET, "https://www.domain.com/demo-mobile-images/dogs-blue.jpg" ).response { (request, response, data , error) in
tableViewCell.backgroundImageView.image = UIImage(data: data, scale:1)
}
但我收到错误:
Cannot invoke 'response' with an argument list of type '((_, _, _, _) -> _)'
看起来我尝试调用的确实是标准的,我不确定错误消息告诉我的是什么。 _
我以为是未命名参数。
如何通过 Alamofire 下载图像?
编辑 1 - 这是错误的屏幕截图
可以 Cmd + 单击并 "Open Image In New Tab" 获取全尺寸图像
试试这个:
Alamofire.request(.GET, imageURL).response() {
(_, _, data, _) in
let image = UIImage(data: data! as! NSData)
tableViewCell.backgroundImageView.image = image
}
需要使用空参数和完成处理程序调用响应。
在这些情况下,重要的是取消单元格正在进行的请求,因为如果取消不当,可能会显示错误的图像。
我开发了一个小而简单的 CocoaPods 库来与 Alamofire 和图像一起工作。每当对同一图像视图对象发出新请求时,库都会自动处理取消。
CocoaPods 是解决您的库依赖需求的好方法。一次安装很容易,也很容易为您的项目添加和更新依赖项。
该库是开源的,可以在 https://github.com/gchiacchio/AlamoImage
找到
它有很好的文档和示例,所以您很快就会喜欢上它。
我自己在几个项目中使用它,包括集合视图和滚动。
尝试使用 Alamofire 修复现有项目,但出现错误。
有问题的代码是:
Alamofire.request(.GET, "https://www.domain.com/demo-mobile-images/dogs-blue.jpg" ).response { (request, response, data , error) in
tableViewCell.backgroundImageView.image = UIImage(data: data, scale:1)
}
但我收到错误:
Cannot invoke 'response' with an argument list of type '((_, _, _, _) -> _)'
看起来我尝试调用的确实是标准的,我不确定错误消息告诉我的是什么。 _
我以为是未命名参数。
如何通过 Alamofire 下载图像?
编辑 1 - 这是错误的屏幕截图
可以 Cmd + 单击并 "Open Image In New Tab" 获取全尺寸图像
试试这个:
Alamofire.request(.GET, imageURL).response() {
(_, _, data, _) in
let image = UIImage(data: data! as! NSData)
tableViewCell.backgroundImageView.image = image
}
需要使用空参数和完成处理程序调用响应。
在这些情况下,重要的是取消单元格正在进行的请求,因为如果取消不当,可能会显示错误的图像。
我开发了一个小而简单的 CocoaPods 库来与 Alamofire 和图像一起工作。每当对同一图像视图对象发出新请求时,库都会自动处理取消。
CocoaPods 是解决您的库依赖需求的好方法。一次安装很容易,也很容易为您的项目添加和更新依赖项。
该库是开源的,可以在 https://github.com/gchiacchio/AlamoImage
找到它有很好的文档和示例,所以您很快就会喜欢上它。
我自己在几个项目中使用它,包括集合视图和滚动。