Thank you shilo for your reply
I am sure i m not retaining any image .Let me explain what i ve done.
In stage, i have a method with following code
Menu* menu=[[Menu alloc]init];
[menu addEventListener:@selector(loadLevelSelect:) atObject:self forType:EVENT_GO_TO_LEVEL_SELECT];
[base addChild:menu];
currentScene=menu;
[menu release];
loadLevelSelect just removes menu from stage
Then in main class i have a playButton and few graphics.
-(void)playButtonClicked:(SPEvent*)event
{
if(selectLevelDone)
return;
selectLevelDone=TRUE;
SPButton *btnTemp=(SPButton*)(event.target);
btnTemp.enabled=NO;
SPEvent *localEvent=[SPEvent eventWithType:EVENT_GO_TO_LEVEL_SELECT];
[self dispatchEvent:localEvent];
}
question is am i doing dispatching right?
i created a method to test called cleanUp which does basically same thing as dealloc expect [super dealloc] (i might be extremely stupid)
so i called this cleanUp method in playButtonClicked.No,memory according to instruments is not released.I put NSlog functions in all spimage dealloc and confirms dealloc is called.
But if i call cleanUp using delayInvocation then it deallocates memory like below
[juggler delayInvocationAtTarget:self byTime:2.0f] cleanUp];