Swift iOS: 将图像传递给其他 VC

Swift iOS: pass Image to other VC

我正在尝试在两个 ViewController 之间传递和重新传递图像。到目前为止我的方法:

if segue.identifier == "chooseCat"
    {
        let IVC: AddProductVC = segue.destinationViewController as! AddProductVC


        IVC.pname2 = pname
        IVC.pnick2 = pnick
        IVC.pno2 = pno
        IVC.podate2 = podate
        IVC.pmanu2 = pmanu

        IVC.cidnew2 = cidnew
      //  IVC.imageImage.image = imageImage3.image


    }

编辑:防止刺激。 pname...pnick 和其他变量作为字符串可以正常工作。重点是imageImage3.image.

不幸的是,由于应用程序崩溃,它无法正常工作。实际上我真的不想将图像直接传递给 UIImage;如果可能的话,我宁愿把它作为数据。棘手的部分是它是一个 TableViewController 而不是我可以隐藏 imageImage3.image.

的普通 ViewController

在您的示例中,您设置了一个 imageImage 的图像 属性,它可能是一个尚不存在的 UIImageView 类型的插座!如果是这样,则创建 AddProductVC viewcontroller 的 UIImage 属性 并将图像传递给它。然后,当您的视图全部正确加载后,设置您的 imageView。

示例:由@iRealMe建议

传递图片,可以这样

    IVC.image = imageImage3.image

现在在您的 AddProductVC

    var image: UIImage!
    @IBOutlet weak var imageView: UIImageView!

    override func viewDidLoad() {
        super.viewDidLoad()
        self.imageView.image = image
    }