Dealloc在下一堂课后打电话给他们

时间:2011-03-29 05:12:35

标签: cocos2d-iphone

我正在使用以下代码从Helloworld场景切换到关卡菜单场景。

NSString *st=[NSString stringWithFormat:@"levelmenu"];
    CCTransitionFade *trans=[CCTransitionFade  transitionWithDuration:0 scene:[NSClassFromString(st) scene]];
    NSLog(@" before replaceScene");
    [[CCDirector sharedDirector] replaceScene:trans];
    NSLog(@" after replaceScene");

我已经在levelmenu init中放了一个NSlog,但我得到的控制台输出为......

2011-03-29 10:16:24.307 testProject[6574:207] init levelmenu
2011-03-29 10:16:24.787 testProject[6574:207]  before replaceScene
2011-03-29 10:16:24.787 testProject[6574:207]  after replaceScene
2011-03-29 10:16:24.860 testProject[6574:207]  dealloc

我们可以改变调用上面序列的顺序,即在调用levelmenu的菜单init的dealloc之后应该调用它。

1 个答案:

答案 0 :(得分:0)

你不应该为此使用dealloc / init。 您可以尝试[CCNode onEnter] / CCNode onExit,当您的场景进入/离开屏幕时会调用它们。