我在我的 Swift 应用程序中使用 SDWebImage
将图像下载到我的 tableview,但我遇到了一个我不知道如何修复的简单错误。我完成了从 Objective C 到 Swift 的项目转换。
我正在使用的代码
let imgURL = (testObject.value(forKey: "testURL"))
self.myImageView.sd_setImage((with: imgURL as! URL!), placeholderImage: UIImage(imageNamed: "no-image.png"))
self.myImageView.contentMode = .scaleAspectFit
错误:
Argument labels '(imageNamed:)' do not math any available overloads
最佳答案
您可以尝试为 UIImage 初始化程序正确命名,并改进对 URL 的转换:
let imgURL = testObject.value(forKey: "testURL") as! URL
self.myImageView.sd_setImage(with: imgURL, placeholderImage: UIImage(named: "no-image.png"))
但更好的是,您可以为“无图像”使用图像文字:
let imgURL = testObject.value(forKey: "testURL") as! URL
self.myImageView.sd_setImage(with: imgURL, placeholderImage: #imageLiteral(resourceName: "no-image.png"))
最好避免强制解包。
let imgURL = testObject.value(forKey: "testURL") as? URL
self.myImageView.sd_setImage(with: imgURL, placeholderImage: #imageLiteral(resourceName: "no-image.png"))
[更新:在作者声称值是一个字符串之后]
如果“testURL”的值是一个字符串,那么您不能将它解包为一个 URL。此代码可能有帮助:
let imgString = testObject.value(forKey: "testURL") as? String ?? ""
self.myImageView.sd_setImage(with: URL(string: imgString), placeholderImage: #imageLiteral(resourceName: "no-image.png"))
关于json - Swift SDWebImage 中的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40836119/