Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Swift 将图像放入UIImageView(另一个ViewController)时出错_Swift_Uiimageview_Segue - Fatal编程技术网

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

Swift 将图像放入UIImageView(另一个ViewController)时出错,swift,uiimageview,segue,Swift,Uiimageview,Segue,我有一个双视图控制器-ItemInfo和ShowImage。在ItemInfo中,我有一个UIImageViewitemImg和来自数组的图像: itemImg.image = UIImage(named:item.img) 它工作得很好 但是我无法从ShowImageviewcontroller将此图像放到UIImageViewfullImage。此代码来自ItemInfoViewController: override func prepare(for segue: UIStoryboar

我有一个双视图控制器-
ItemInfo
ShowImage
。在
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
我有个错误

线程1:致命错误:在展开文件时意外发现nil 可选值


请帮我修复它。

在这里
destViewController.fullImage.image=self.itemImg.image
,您的
fullImage
将为零,因为destViewController的
视图
尚未加载

因此,我建议您在
ShowImage
控制器上使用image属性

怎么做

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

  • 在这里,
    destViewController.fullImage.image=self.itemImg.image
    ,您的
    fullImage
    将为零,因为destViewController的
    视图
    尚未加载

    因此,我建议您在
    ShowImage
    控制器上使用image属性

    怎么做

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

  • 如何操作?在destViewController中创建UIImage的属性并按如下方式传递-destViewController.image=self.itemImg.Images如何操作?在destViewController中创建UIImage的属性并按如下方式传递-destViewController.image=self.itemImg.Images不要在
    prepareforSegue
    方法。此时,没有加载任何UI组件,因此所有内容都为零。只需设置一个UIImage变量,并从WIll/Did Load/Aspect方法之一将其设置为UIImageView。不要直接在
    prepareforSegue
    方法中为UI组件设置值。此时,没有加载任何UI组件,因此所有内容都为零。只需设置一个UIImage变量,并从WIll/Did Load/execute方法之一将其设置为UIImageView。