我一直试图使用Kingfisher来设置按钮的背景图像,但是却遇到了快速的编译器错误:
模棱两可的使用 'setBackgroundImage(with:for:placeholder:options:progressBlock:completionHandler:)'
这个表达方式模棱两可吗?我查看了KF文档,我认为这就是您的称呼。
var options: KingfisherOptionsInfo = []
options.append(.forceRefresh)
button.kf.setBackgroundImage(with: URL(string: picture), for: .normal, placeholder: nil, options: options, progressBlock: nil, completionHandler: nil)
答案 0 :(得分:2)
该错误是因为您需要处理completionHandler
而不是传递nil
。尝试以下代码:
button.kf.setBackgroundImage(with: URL(string: picture), for: .normal, placeholder: nil, options: options, progressBlock: nil) { result in
// Handle success or failure here..
if let error = result.error {
print(error)
}
}
答案 1 :(得分:0)
我遇到了同样的问题,我只是通过删除函数调用中的nil参数来解决了这个问题。
imgBanner.kf.setImage(with: url , placeholder:#imageLiteral(resourceName: "landscape.png"), options: nil, progressBlock: nil, completionHandler: nil)
与
imgBanner.kf.setImage(with: url , placeholder:#imageLiteral(resourceName: "landscape.png"))
答案 2 :(得分:0)
快速5
为此替换行。
videoImageView.kf.setImage(with: resource, placeholder: nil, options: [.transition(.fade(0)), .processor(p)], progressBlock: nil) { (result) in
}
答案 3 :(得分:0)
我通过剥离未使用的参数(我们在其中传递nil
的函数调用)并导入Kingfisher来解决了这个问题。
步骤1 。 import Kingfisher
第2步。 button.kf.setBackgroundImage(with: URL(string: urlString), for: .normal, options: options)
答案 4 :(得分:0)
这对我来说非常基本的修复,使用 URL(string: url)
而不是字符串 url
Xcode 需要类型特定
cell.imgView.kf.setImage(
with: URL(string: url),
placeholder: UIImage(named: "dummyaadhar"),
options: [
.processor(processor),
.scaleFactor(UIScreen.main.scale),
.transition(.fade(1)),
.cacheOriginalImage
])