我一直在尝试从 sprite kit SKScene 层中执行 segue。我的应用程序要求用户触摸场景上的图像,这会推动新的 UIViewController。但是每次我尝试从 SKScene 游戏层中执行时,它都会给我输出没有带有标识符错误的 segue。我确实有一个 segue 并用标识符指定了它。
我的简单问题是,如何在运行 SKScene 游戏层的情况下进行 segue?请帮帮我。
我一直在尝试从 sprite kit SKScene 层中执行 segue。我的应用程序要求用户触摸场景上的图像,这会推动新的 UIViewController。但是每次我尝试从 SKScene 游戏层中执行时,它都会给我输出没有带有标识符错误的 segue。我确实有一个 segue 并用标识符指定了它。
我的简单问题是,如何在运行 SKScene 游戏层的情况下进行 segue?请帮帮我。
Segue 属于视图控制器,而不是 SpriteKit 场景。如果您想从 SpriteKit 节点的事件处理代码中执行转场,您需要查找拥有呈现场景的视图的视图控制器。例如,在SKScene
子类的touchesBegan:withEvent:
方法中:
UIViewController *vc = self.view.window.rootViewController;
[vc performSegueWithIdentifier:@"id" sender:nil];
斯威夫特版本:
self.view!.window!.rootViewController!.performSegueWithIdentifier("gameOverSegue", sender: self)