【发布时间】:2015-02-16 00:44:09
【问题描述】:
您好,我有一个从主菜单 UIViewController 开始播放我创建的游戏的 segues。但是如果我想退出主菜单,SpriteKit 中没有 prepareForSegue 功能。
如何从我的场景中回到主菜单?
我正在使用触摸开始处理事件而不是 UIButtons
【问题讨论】:
标签: ios swift ios8 sprite-kit
您好,我有一个从主菜单 UIViewController 开始播放我创建的游戏的 segues。但是如果我想退出主菜单,SpriteKit 中没有 prepareForSegue 功能。
如何从我的场景中回到主菜单?
我正在使用触摸开始处理事件而不是 UIButtons
【问题讨论】:
标签: ios swift ios8 sprite-kit
您从包含SKView 而不是SKScene 的ViewController 调用performSegue。在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)
【讨论】:
self.navigationController?.popViewControllerAnimated(true)