TestsTested | ✓ |
LangLanguage | SwiftSwift |
License | MIT |
ReleasedLast Release | Feb 2017 |
SwiftSwift Version | 3.0 |
SPMSupports SPM | ✓ |
Maintained by Norbert Sroczyński.
STXImageCache is a lightweight, pure-Swift, easy to use library for downloading and caching images. It provides convenient UI extensions. It’s inspired by popular libraries like Kingfisher and SDWebImage.
let url = URL(string: "image_url")!
imageView.stx.image(atURL: url)
let url = URL(string: "image_url")!
let placeholder = UIImage(named: "placeholder")
let operation = imageView.stx.image(atURL: url, placeholder: placeholder, progress: { progress in
// update progressView
}, completion: { image, _ in
// do image processing
return image
})
import UIKit
import STXImageCache
final class Cell: UITableViewCell {
var operation: STXImageOperation?
@IBOutlet weak var progress: UIProgressView!
override func prepareForReuse() {
super.prepareForReuse()
operation?.cancel()
}
func configure(withURL url: URL, placeholder: UIImage) {
imageView?.image = nil
progress.progress = 0
self.progress.isHidden = false
operation = imageView?.stx.image(atURL: url, placeholder: placeholder, progress: { progress in
DispatchQueue.main.async {
self.progress.setProgress(progress, animated: true)
}
}, completion: { image, _ in
DispatchQueue.main.async {
self.progress.isHidden = true
}
return image
})
}
}
All source code is licensed under the MIT License.