- iOS 13.0 ~
- 이미지 캐싱 라이브러리 KingFisher 를 모방해 구현한 모듈입니다.
- 이미지 캐싱 및 다운샘플링 기능을 지원합니다.
- SPM (Swift Package Manager)
https://github.com/trumanfromkorea/KingReceiver.git
setImage
메소드를 사용합니다.
import KingReceiver
import UIKit
class ViewController: UIViewController {
@IBOutlet weak var imageView: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
}
private func setImageWithURL() {
imageView.kr.setImage(
with: "https://someimage.url",
placeholder: UIImage.emptyImage,
scale: 0.5
)
}
private func setImageWithData() {
imageView.kr.setImage(
with: imageData,
to: imageView.frame.size
)
}
}
URL
타입이 아닌String
타입으로 사용합니다.- 이미지 출력 실패 시 나타낼
placeholder
이미지를 지정할 수 있습니다. - 이미지 로딩 시 나타낼
indicator
를 지정할 수 있습니다. - 캐시 종류를 선택할 수 있습니다.
.memory
.disk
.none
3가지 선택지가 있습니다. resizing
파라미터로 다운샘플링 여부를 선택할 수 있습니다.scale
파라미터로 다운샘플링 정도를 설정할 수 있습니다.
func setImage(
with absoluteURL: String,
placeholder: UIImage? = nil,
indicator: UIActivityIndicatorView = UIActivityIndicatorView(),
cachePolicy: ImageCacheFactory.Policy = .memory,
resizing: Bool = true,
scale: CGFloat = 1
)
- 유효한
Data
타입을 사용합니다. - 이미지 출력 실패 시 나타낼
placeholder
이미지를 지정할 수 있습니다. targetSize
를 이용해 크기를 지정할 수 있습니다.scale
파라미터로 다운샘플링 정도를 설정할 수 있습니다.
func setImage(
with data: Data,
placeholder: UIImage? = nil,
to targetSize: CGSize,
scale: CGFloat = 1
)