从 UIViewController 呈现 SKScene - Swift

Present SKScene from UIViewController - Swift

我想制作一个游戏,使用 UIViewController 作为菜单,使用 SKScene 作为 GameScene。

当玩家按下菜单上的播放按钮时,我希望在菜单和 GameScene 之间进行转换,例如:

let nextScene = GameViewController()
self.presentViewController(nextScene, animated: true, completion: nil)

但是我得到了这个错误:

Could not cast value of type 'UIView' (0x19ff623e0) to 'SKView' (0x19f813e70).

请问我该怎么做?

您在 GameViewController 中的代码试图将 self.view 视为 SKView 但它实际上是 UIView.

您需要在 storyboard/xib 中将视图 class 设置为 SKView 或在您的视图控制器 loadView 方法中自行创建。