You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SpriteKit:从GameScene导航回LauncherScene时协调器值为nil的问题求助

SpriteKit:从GameScene导航回LauncherScene时协调器值为nil的问题求助

各位好,我刚入坑iOS/Swift/SpriteKit,正在把一个简单的纸牌接龙游戏从Android移植过来。目前我已经做了两个核心场景:

  • LauncherScene:作为App的首页,负责游戏入口
  • GameScene:处理发牌逻辑和游戏的核心玩法

我已经在LauncherScene里成功实现了协调器协议,现在点击首页的“New Game”文本标签时,会调用GameViewCoordinator里的newGameTapped方法,能正常从LauncherScene跳转到GameScene,这部分是没问题的。

但是现在卡在了返回逻辑上:我想在GameScene里加个返回首页的按钮,点击后回到LauncherScene,可是当我尝试调用协调器的返回方法时,发现GameScene里持有的协调器实例是nil,完全没法触发导航操作。

我在GameScene里定义了这样的弱引用属性:

weak var coordinator: GameCoordinator?

然后在LauncherScene触发跳转的时候,我尝试给这个属性赋值,比如创建GameScene实例后直接设置gameScene.coordinator = self.coordinator,但好像这个赋值没生效——进入GameScene后,不管怎么访问coordinator,它都是nil。

有没有大佬遇到过类似的问题?或者SpriteKit的场景切换有什么我没注意到的细节?比如场景初始化或者传递引用的时候有什么坑吗?麻烦给我指点一下,谢谢啦!

备注:内容来源于stack exchange,提问作者Newps

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.13 16:34:37