ios - 从 SKScene 到 UIViewController 的 Segue 不起作用

标签 ios swift xcode segue skview

我的 Storyboard的结构:

1.Screen1(UIViewController)

2.游戏画面(SKScene)

3.Screen3(UIViewController)

我正在从 Screen1 传递 UIViewController self 对象

//Screen1 class

@IBAction func onStartButtonClicked(_ sender: Any) {
    Values.viewController = self
}

到 GameScreen,进行转场时:

//GameScreen class 

struct Values {
   static var viewController: UIViewController!
}

class GameScreen: SKScene {...}

我的任务是使用 Screen1 的对象从 GameScreen 到 Screen3 进行转场,该对象已从上一步传递:

Values.viewController!.performSegue(withIdentifier: "toScoreSegue1", sender:  self)

一切都应该工作正常,因为我将一个segue从Screen1拖到Screen3,给它标识符“toScoreSegue1”并使用Screen1对象调用它。然而,什么也没有发生。

没有错误等

任何帮助将不胜感激!

最佳答案

我发现了一个问题!

我错误地在错误的 ViewController 上调用了 PerformSegue。

我必须在初始化 SKScene View 的 ViewController 上调用 segue:

1.Screen1(UIViewController)

2.GameScreen (SKScene) - 有自己的 ViewController,应该使用它来代替 Screen1!

3.Screen3(UIViewController)

我真的希望有同样问题的人会发现它有帮助。

关于ios - 从 SKScene 到 UIViewController 的 Segue 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43750139/

相关文章:

iphone - iOS 魔法记录 & SQLCipher

ios - 升级项目 ios8 Xcode 6.0.1

ios - ld : framework not found -framework ERROR

iphone - ARC 警告 - "Not safe to remove an unused autorelease"

ios - IQkeyboardmanager 订单问题

xcode - 如何找到重复符号的位置

ios - 标记为启动画面

ios - 哪个是在 MVP 模式(swift)中初始化演示者的最佳方式

ios - 如何读取父节点名称而不从 firebase For ios 获取值

ios - Swift 语法 - 闭包