如何以编程方式从SKScene到UIViewController执行成功的segue

时间:2016-05-15 22:54:56

标签: ios swift uiviewcontroller segue presentviewcontroller

我已经尝试了几个不同的答案,但尚未找到有效的答案。

我一直在

fatal error: unexpectedly found nil while unwrapping an Optional value

我有一个名为selectUpgrade的SKScene,它位于我的GameViewController中,我试图转向一个名为MissileUpgrade的UIViewController。

var vc2 = MissileUpgrade()  //trying to get to this UIViewController
var gameVC = GameViewController()  // currently in a scene in this UIViewController

我在我的场景中称之为segue

func goToMissileUpgrade() {
    gameVC.presentViewController(vc2, animated: true, completion: nil)
}

这些都在同一个故事板中。如果我将MissileUpgrade设置为初始VC,它将加载正常,因此我知道它在此方面无关。我迷失了为什么这不起作用。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

如果您使用的是故事板,请不要使用presentViewController使用performSegueWithIdentifier

在故事板中给你的Segue一个标识符,然后在代码中引用它:

self.performSegueWithIdentifier("yourSegueIdentifierHere", sender: self)