Cocos2d iphone 启用arc的cocos2d-替换场景后旧场景仍然存在
我正在尝试用cocos2d实现一个游戏。我根据本教程中的说明启用了arc。 在用主菜单场景替换游戏场景后,我意识到了一个奇怪的行为,我无法理解这个问题。替换后,新场景出现并按我的预期工作,但游戏场景(旧场景)仍会做出反应。我认为当我替换场景时,旧场景应该被完全移除,但它仍然生活在新场景下 部分有关守则如下: 单身人士:Cocos2d iphone 启用arc的cocos2d-替换场景后旧场景仍然存在,cocos2d-iphone,automatic-ref-counting,scene,Cocos2d Iphone,Automatic Ref Counting,Scene,我正在尝试用cocos2d实现一个游戏。我根据本教程中的说明启用了arc。 在用主菜单场景替换游戏场景后,我意识到了一个奇怪的行为,我无法理解这个问题。替换后,新场景出现并按我的预期工作,但游戏场景(旧场景)仍会做出反应。我认为当我替换场景时,旧场景应该被完全移除,但它仍然生活在新场景下 部分有关守则如下: 单身人士: +(void) go: (CCLayer *) layer{ CCDirector *director = [CCDirector sharedDirector];
+(void) go: (CCLayer *) layer{
CCDirector *director = [CCDirector sharedDirector];
CCScene *newScene = [Singelton wrap:layer];
if ([director runningScene]) {
[director replaceScene: [CCTransitionFlipX transitionWithDuration:0.5 scene:newScene]];
} else {
[director pushScene:newScene];
}
}
+(CCScene *) wrap: (CCLayer *) layer{
CCScene *newScene = [CCScene node];
[newScene addChild: layer];
return newScene;
}
+(void) mainMenu
{
CCLayer *layer = [MainMenu node];
[Singleton go:layer];
}
当我需要进入主菜单场景时,我调用singleton类,如下所示
[Singleton mainMenu]
菜单场景出现后,如何杀死游戏场景
谢谢你的帮助。辛格尔顿做什么?我怀疑这可能是原因,在替换场景时/之后保留场景/层或任何其他节点的引用。事实上,该类的命名不正确-很抱歉造成误解。这不是一个单例类,只是一个场景管理器,如下面的教程所示。因此加载后没有场景的引用。