如何解决追加ViewController的流程?
我一般都不熟悉Swift和编程,因此,如果我对此解释不佳,我会提前道歉。我正在作为训练营的一部分实习一个旧项目。我正在尝试从图像上方显示的菜单视图导航到另一个屏幕。我想将图像数据的副本存储在数组中,并将其移到下一个屏幕。如果可能的话。但是在点击创建订单按钮后,我得到了这个警告。我不确定如何实施控制台中建议的解决方案。如下;
`fileprivate func fillData() 轻触ID为nil的消息。 idx =零 来自OrderCreateViewController的附加流 附加并设置为当前控制器:可选(Bond_Agent.OrderCreateViewController) 用以下命令创建订单: 讯息:无 文件:[]
2020-08-18 14:00:26.107861-0400 Bond Agent [7867:5955978]警告:尝试在视图不在窗口层次结构中的
请让我知道是否需要更多背景信息,在此先感谢您的时间和帮助
解决方法
据我了解,您正在尝试将图像存储在视图上,并在要对其进行序列化的另一个视图控制器中访问该图像数据。如果我的理解是正确的,则可以执行以下操作 假设您有2个Viewcontrollers(MainVC),其中有图像和创建订单按钮,以及(SecondVC),当单击“创建订单”时将显示它们。因此,您要在SecondVC中访问MainVC中的图像数据,然后可以执行以下操作:
在MainVC中:
class MainVC : UIViewController {
var imageData : NSMutableArray = []
....
func collectionView(_ collectionView: UICollectionView,cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
....
imageData.add(<UImage>)
return cell;
}
override func prepare(for segue: UIStoryboardSegue,sender: Any?) {
if segue.destination is SecondVC
{
let vc = segue.destination as? SecondVC
vc?.imageDataArray = imageData
}
}
}
在SecondVC.swift中,您必须声明如下的imageDataArray,当您从MainVC到SecondVC执行segue时,此imageDataArray现在将包含MainVC的所有imageData数组内容,您可以访问以下内容:
class SecondVC : UIViewController {
var imageDataArray : NSMutableArray = []
...
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。