在解包Optional值时,CoreData意外地发现了nil

时间:2015-10-06 16:13:18

标签: swift swift2

有一个我键入用户名的应用程序,从imagePickerController中选择一张图片,并将所有数据保存到核心数据并检索到tableview单元格并且工作正常,但是如果我不选择图片应用程序正在崩溃“日志”在解开一个可选值时发现nil“,我忘记了怎么做,不记得我解决了什么项目。

let imageData = NSData(data: UIImageJPEGRepresentation(photoImageView.image!, 1.0)!)
newUser.setValue(imageData, forKey: "image")

像图像数据一样!= nil { } ??

2 个答案:

答案 0 :(得分:2)

试试if let image = photoImageView.image {//use the image}。这将以安全的方式打开可选项。

使用!运算符时要小心,基本上保证事物永远不会为零。使用if let语句或?运算符,除非绝对不能将有关变量设为nil。

答案 1 :(得分:-2)

用这个解决了

if photoImageView == nil {
        let imageData = NSData(data: UIImageJPEGRepresentation(photoImageView.image!, 1.0)!)
        newUser.setValue(imageData, forKey: "image")
    }