AlamoImage 0.3.7

AlamoImage 0.3.7

测试已测试
语言语言 SwiftSwift
许可证 MIT
发布最后发布2015年10月
SPM支持 SPM

Guillermo Chiacchio 维护。



  • 作者
  • Guillermo Chiacchio

用法

  1. 在 swift 文件顶部放入 import AlamoImage
  2. 有一处用于放置图片的位置
    iOS:
    let imageView = UIImageView()

    OSX:
    let imageView = NSImageView()

  3. 使用以下任何一种方法

请求图片

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

UIImageView 和 NSImageView 扩展

基本用法

请求图片的最简单方法是使用一个 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)

处理结果

如果您想对视图有更多控制权,也可以使用 successfailure 闭包参数。以下是一个示例

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()

要求

  • iOS 8.0+ / Mac OS X 10.9+
  • Xcode 6.3

作者

Guillermo Chiacchio, [email protected]

许可证

AlamoImage 在 MIT 许可下可用。有关更多信息,请参阅 LICENSE 文件。