1 Answer
1

This can only happen if your scene isn't released. That means, yes, you do retain it somehow. Keep in mind that adding an object to an NSArray or NSDictionary retains it.

Set a breakpoint in each scene's -(void) dealloc method, or add an NSLog/CCLOG line, to make sure the scene is properly deallocated.

I'm guessing from your code that you're actually holding on to the scene1 and scene2 objects. You should not do that. Instead, create a new instance of the scene class every time you change it, like so: