如何从SkView中解脱

时间:2015-02-16 00:44:10

标签: ios swift ios8 sprite-kit

嗨我从主菜单UIViewController中有一个segues开始玩我创建的游戏。但是,如果我想退回到主菜单,SpriteKit中没有prepareForSegue函数。

如何从场景中退回主菜单?

我正在使用触摸开始处理事件而不是UIButtons

1 个答案:

答案 0 :(得分:2)

您从包含performSegue而不是SKScene的ViewController致电SKView。在SKScene内创建一个指向GameViewController的弱变量。在创建SKScene时设置它。然后在此属性上调用performSegue。

//Game Scene
class GameScene {
   weak var gameViewController : GameViewController?
}

// GameViewController
override func viewDidLoad() {
    //Other code
    scene.gameViewController = self
    skView.presentScene(scene)
}

如果您想在GameScene中执行segue,请致电

 // Inside GameScene
 self.gameViewController?.performSegueWithIdentifier("indentifer", sender: self)

返回主视图。

self.gameViewController?.navigationController?.popViewControllerAnimated(true)