0

我以这种方式使用 UIViewController 开始游戏:

navController = [[MyNavigationController alloc] initWithRootViewController:myController];

当您按下游戏按钮时,游戏以这种方式开始场景:

[[CCDirector sharedDirector] runWithScene:gameScene];

好的,现在当我想退出时,我只需用起始视图控制器替换 UIViewController(因为我用 UIKit 做了菜单,用 cocos2d 做了游戏)来做我想要的动画,它工作得很好......但显然是旧的运行场景仍然保留在内存中,它不会以任何方式释放,我需要删除场景并让应用程序像第一次运行时一样。

replaceScene 不起作用,我只需要直接从 [CCDirector sharedDirector] 停止正在运行的场景并让应用程序开始运行时的所有内容,我该怎么做?popScene 也不起作用。

4

1 回答 1

0

您可以从应用程序中删除 CCDirector。

导演是一个简单的 UIViewController 所以,你可以调用

[[CCDirector sharedDirector] removeFromParentViewController];

并在调用后[[CCDirector sharedDirector] end];删除单例实例

于 2013-04-26T04:28:57.057 回答