avatarImgView.kf.setImage(with: URL(string: avarUrlOk), placeholder: nil, options: nil, progressBlock: nil, completionHandler: nil)
}
不报错写法01
avatarImgView.kf.setImage(with: URL(string: avarUrlOk), placeholder: UIImage(named: "mine_defualt_head"))
不报错写法02
avatarImgView.kf.setImage(with: URL(string: avarUrlOk), placeholder: placeHolder, options: nil, progressBlock: nil) { (reslt) in
}
虽然回调写的是 可选项,但是用的时候还是不能写成nil,可能是因为里边有设置默认值的原因,源码如下:
@discardableResult
public func setImage(
with resource: Resource?,
placeholder: Placeholder? = nil,
options: KingfisherOptionsInfo? = nil,
progressBlock: DownloadProgressBlock? = nil,
completionHandler: ((Result<RetrieveImageResult, KingfisherError>) -> Void)? = nil) -> DownloadTask?
{
return setImage(
with: resource.map { .network($0) },
placeholder: placeholder,
options: options,
progressBlock: progressBlock,
completionHandler: completionHandler)
}