import AlamoImage
let imageView = UIImageView()
let imageView = NSImageView()
let imageURL = "https://avatars3.githubusercontent.com/u/7842501?v=3&s=40"
Alamofire.request(.GET, imageURL)
.responseImage() { (request, _, image, error) in
if error == nil && image != nil {
self.imageView.image = image
}
}
请求图片的最简单方法是使用一个 URLStringConvertible
实例。
let imageURL = "https://avatars3.githubusercontent.com/u/7842501?v=3&s=40"
self.imageView.requestImage(imageURL)
您还可以放置一个 placeholder
图片。此图片将在请求未响应或发生错误时显示。
let imageURL = "https://avatars3.githubusercontent.com/u/7842501?v=3&s=40"
let placeholder = UIImage(named:"smile.png") // In OSX use NSImage(named:"smile.png")
self.imageView.requestImage(imageURL, placeholder:placeholder)
如果您想对视图有更多控制权,也可以使用 success
和 failure
闭包参数。以下是一个示例
let imageURL = "https://avatars3.githubusercontent.com/u/7842501?v=3&s=40"
let placeholder = UIImage(named:"smile.png") // In OSX use NSImage(named:"smile.png")
self.imageView.requestImage(imageURL,
placeholder: placeholder,
success:
{ (imageView, _, _, image) in
UIView.transitionWithView(imageView,
duration: 1.0,
options: .TransitionCrossDissolve,
animations: {
imageView.image = image
},
completion: nil
)
}
)
每个 UIImageView
(NSImageView
在 OSX) 都有自己的对最后开始的 request
的引用。每次发出新的请求时,它都会自动取消,但您可以在任何时候取消它。
self.imageView.request?.cancel()
Guillermo Chiacchio, [email protected]
AlamoImage 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。