我使用默认的新游戏项目做了一个游戏,然后插入一个普通的UIView作为应用程序的介绍场景。 因为使用SKScene将intro“升级”了起来,使用button将原始的gameViewController放到堆栈上。 一旦游戏视图被加载,似乎有点迟缓,所以我假设这是与2完整的skscenes和视图控制器的开销。 我甚至设置了着陆场景暂停,但显然仍然使用内存! 我的问题是,如何使用SKScene作为着陆页(使用它自己的LandingViewController),然后有效地将GameViewController添加到堆栈。 我试着合并2个视图控制器,但这似乎是一个愚蠢的做事方式。 当前设置: LandingViewController |-LandingScene GameViewController |- GameViewScene |- Other Game Classes 应用程序进入LandingScene(和着陆UI精灵)的LandingViewController。 LandingViewController处理触摸事件,如button等。当新游戏被轻敲时,GameViewController被推送(当前使用Segue)和GameViewController进入场景,游戏状态,UI,游戏板等。GameViewController处理触摸事件的场景。 当游戏结束时(点击结束游戏或游戏结束状态),GameViewControllerpopup。 LandingViewController和GameViewController控制他们的animation和点击stream等,所以GameViewController做游戏逻辑,像下一个转弯结束游戏等任何帮助或指针将不胜感激,因为我想这样做的权利!