imagePickerController 选择照片时出错

imagePickerController error selecting a Photo

我正在使用 imagePickerController,但是当我 select 图像出现错误时:

致命错误:在展开可选值时意外发现 nil

我不知道为什么,因为我用 if let

展开值
  func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [NSObject : AnyObject]) {

    if let img = info[UIImagePickerControllerOriginalImage] as? UIImage {
        photoImageView.image = img
    }

    dismissViewControllerAnimated(true, completion: nil)
}

可能 VC 调用有什么问题。此代码工作正常:

let picker = UIImagePickerController()
            picker.sourceType = UIImagePickerControllerSourceType.PhotoLibrary
            picker.allowsEditing  = false
            picker.delegate = self
            self.presentViewController(picker, animated: true, completion: nil)



func imagePickerController(picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [String : AnyObject]) {
    let image = info[UIImagePickerControllerOriginalImage] as! UIImage
    productImageView.image = image
    dismissViewControllerAnimated(true, completion: nil)
}

错误是否发生在

photoImageView.image = img

在这种情况下,photoImageView 可能为 nil(它通常是一个隐式解包的可选项)。

根据评论更新:

请检查 photoImageView 是一个 @IBOutlet 并且它连接到故事板上的 UIImageView。如果您以编程方式创建它,请在设置图像之前尝试将其添加到 window 中的视图。