Swift无法初始化UIImageView并导致致命错误:意外发现无

时间:2017-04-04 09:54:29

标签: swift xcode uiimageview xcode8 xcode8.2

我正在使用xcode 8.2.1

致命错误:在解包可选值时意外发现nil

这是代码,

class ShowMediaViewController: UIViewController {
var image: UIImage?
var titreText: String!
@IBOutlet var imageView: UIImageView!
//i tried @IBOutlet weak var imageView: UIImageView! but didn't work
@IBOutlet weak var titre: UILabel!

override func viewDidLoad() {
    super.viewDidLoad()

    if image != nil {

        //crashes here, because imageView is nil
        imageView.image = image
    } else {
        print("image not found")
    }

}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()

    // Dispose of any resources that can be recreated.
}

}

代码似乎在此行崩溃

imageView.image = image

我认为是因为imageView是nil ?,因为我试过

print(image)

然后好了,然后 print(imageView),它会导致致命的错误 但我做了初始化

@IBOutlet var imageView: UIImageView!

我的故事板可能有些问题?

非常感谢任何帮助

**

  

更新1   连接检查器

pic 1

pic 2 **

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题。我尝试了以下步骤。它有效。

尝试这些事情,

  1. 检查imageView是否正确绑定到storyBoard。
  2. 清理并构建项目。
  3. 如果不起作用

    1. 关闭并重新启动XCode
    2. 从storyBoard中删除imageView再次添加imageView并再次绑定。

答案 1 :(得分:0)

您可能错过了从视图到插座的连接。检查这些: -

1)单击代码中插座旁边的点可显示与故事板的连接 2)图像的出口窗口显示与代码的连接