将图像放入 UIImageView 时出错(另一个 ViewController)

Error when putting image to UIImageView (another ViewController)

我有两个 ViewController - ItemInfoShowImage。在 ItemInfo 中,我有一个 UIImageView itemImg,图像来自数组:

itemImg.image = UIImage(named:item.img)

它运行完美。

但我无法将此图像从 ShowImage ViewController 放入 UIImageView fullImage。此代码来自 ItemInfo ViewController:

override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        if segue.identifier == "showImage" {
            let destViewController: showImage = segue.destination as! showImage
            destViewController.title = itemName.text
            destViewController.fullImage.image = self.itemImg.image
        }
    }

在线

destViewController.fullImage.image = self.itemImg.image

我有一个错误

Thread 1: Fatal error: Unexpectedly found nil while unwrapping an Optional value

请帮我解决一下。

此处 destViewController.fullImage.image = self.itemImg.image,您的 fullImage 将为 nil,因为 destViewController 的 view 尚未加载。

所以我建议您在 ShowImage 控制器上使用图像 属性。

怎么做?:

  1. 在您的 ShowImage 控制器中添加 var image:UIImage?
  2. 分配 destViewController.image= self.itemImg.image 而不是 destViewController.fullImage.image = self.itemImg.image
  3. 在您的 ShowImage 控制器的 viewDidLoad 方法中,将图像设置为您的 imageView(fullImage),fullImage.image = image