目前我的单元格中有一个用作图像的按钮,为什么是按钮而不是图像,似乎使用按钮可以使图像更清晰,但这既不是在这里也不是在那里。
if realDistance > 8000
{
self.tourist.text = "Tourist"
//crashing line
self.touristBackground.imageView?.image = UIImage(named: "tours-1")
}
这是我当前的代码,注释行是崩溃的代码。我不确定为什么会崩溃而不是上面的那一行。
确切错误是致命错误:
在解包可选值时意外发现nil
我想我可以试试if if但这似乎不起作用。然而,我可能做错了。
EDIT。它也发生在这里
if lbuttonHidden == true
{
self.lls.text = String(self.lls.text!.toInt()! - 1)
//crashing line
if self.lls.text == "\(0)"
{
self.trophy.image = UIImage(named: "STAR2")
}
}
答案 0 :(得分:1)
试试这个......
if let imageView = self.touristBackground.imageView {
imageView.image = UIImage(named: "tours-1")
}
else
{
print("Image view is nil!")
}
答案 1 :(得分:0)
鉴于@Anni S解决方案不起作用(可选绑定),作为一种测试方式,替换
self.touristBackground.imageView?.image = UIImage(named: "tours-1")
用
self.touristBackground.imageView?.image = UIImage()
如果您的代码没有崩溃,那么错误就在于:(a)图像不存在该名称或由于某种原因无法使用和(b)在您的类实现中,“图像”是隐式的展开(无法在没有崩溃的情况下处理nil。)