Swift SDWebImage中的错误

时间:2016-11-28 01:56:29

标签: json swift uitableview nsobject sdwebimage

我在我的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

错误:

  

参数标签'(imageNamed :)'不计算任何可用的重载

3 个答案:

答案 0 :(得分:1)

您可以尝试为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"))

答案 1 :(得分:0)

这可能是Swift 3的变化,但它应该是AddType video/ogg .ogv AddType video/mp4 .mp4 AddType video/webm .webm

答案 2 :(得分:0)

它对我有用。 试试这个: -

self.imageView.sd_setImage(with: URL(string: item.image!))

您需要将字符串转换为URL才能使其正常工作。