我正在努力实现将在2视图控制器,vc1和vc2之间移动的代码。Swift之间的视图控制器之间的基本转换
vc1在2个SKView之间切换,而vc2只是在UIView中显示一些简单的东西。
vc1和vc2都在主要故事板中。
VC1被首先显示,然后在一个SKScene它塞格斯到VC2的一个点:
let currentViewController: UIViewController = (self.view?.window?.rootViewController)!
currentViewController.performSegue(withIdentifier: "VC1toVC2", sender: currentViewController)
在VC2一个短暂的延迟后,它塞格斯回VC1:
self.performSegue(withIdentifier: "VC2toVC1", sender: self)
这些塞格斯工作。
然后,与上述相同的代码(使用相同的SEGUE):
let currentViewController: UIViewController = (self.view?.window?.rootViewController)!
currentViewController.performSegue(withIdentifier: "VC1toVC2", sender: currentViewController)
...的第二次它不工作从VC1到原因请看VC2。没有例外,只是vc2不显示。
我发现了一些其他职位不解决这个问题,例如: * Swift segue not working? - 表明,UI更新必须在主线程,而这一次,说明如何做,在斯威夫特3 - How do I dispatch_sync, dispatch_async, dispatch_after, etc in Swift 3? - - 我得到同样的结果 *其他职位使用视图控制器的.show或.present方法建议---我得到相同的结果
任何想法/指导?