我有一个专门作为SKScene运行的基本游戏。我想过渡到一个名为testview.xib的视图,但找不到任何Swift实例。
这是我基于其他答案的尝试
let vc = UIViewController(nibName: "testview", bundle: nil) as UIViewController
self.view.window.rootViewController.presentViewController(vc, animated: true, completion: nil)
但是应用程序失败,并显示错误“线程1:EXC_BAD_INSTRUCTION(代码= EXC_I386_INVOP,子代码0x0)”
在SKScenes之间移动的代码是
var transition:SKTransition = SKTransition.flipHorizontalWithDuration(1)
var scene:SKScene = otherScene(size: self.size)
self.view.presentScene(scene, transition: transition)
事实证明这是presentViewController()
从init()
类的方法中进行调用的问题。基本上,您无法presentViewController()
在设置视图/控制器之前调用;取而代之的是,您通常会在发生某些操作(按钮按下,触摸事件等)时调用它。
通过从情节提要而不是xib加载视图控制器,解决了开始在评论中讨论然后进入聊天的问题。注意:xib可以工作,但是设置比情节提要要复杂得多。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句