我正在尝试在2个ViewControllers之间传递并重新传递图像。到目前为止我的方法:
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,而不是一个普通的ViewController我可以隐藏imageImage3.image ......
到目前为止,谢谢。
答案 0 :(得分:0)
在你的例子中,你设置了imageImage的image属性,它可能是UIImageView类型的一个尚不存在的出口!如果是这样,则创建AddProductVC视图控制器的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
}