问题描述
override func viewWillTransition(to size: CGSize,with coordinator: UIViewControllerTransitionCoordinator){
if UIDevice.current.orientation.isPortrait{
let secondView: UIStoryboard = UIStoryboard(name: "Main",bundle: nil)
let main = secondView.instantiateViewController(withIdentifier: "ViewController") as! ViewController
main.modalPresentationStyle = .fullScreen
self.present(main,animated: true,completion: nil)
}
if UIDevice.current.orientation.isLandscape{
self.dismiss(animated: true,completion: nil)
}
}
我使用此代码在两个不同的情节提要的viewcontroller之间切换。我如何在两个不同故事板中的那些视图控制器之间传递数据。 我尝试过“ main.instanceData = myData在当前之前”,这似乎可行,但是myData的初始值为nil,因此当执行此行代码时,它将显示“线程1:致命错误:意外地发现nil,而隐式展开一个可选值”
解决方法
只需尝试一下。您可以像这样将数据直接传递给viewController:
let secondView: UIStoryboard = UIStoryboard(name: "Main",bundle: nil)
let main = secondView.instantiateViewController(withIdentifier: "ViewController") as! ViewController
main.data = yourdata
main.modalPresentationStyle = .fullScreen
self.present(main,animated: true,completion: nil)