我的游戏中有一个对象继承自CCLayer
. 这一层MainLayer
是游戏的主要组成部分,其中大部分动作发生并显示精灵。
我遇到并且已经尝试了几个小时来解决的问题是取消分配 this MainLayer
。这一层有很多孩子和很多动作。最烦人的部分是,只有在释放时它有时会崩溃,有时它工作正常,我看不出情况有什么不同。
它崩溃的部分是dealloc
方法CCNode
:
- (void) dealloc
{
CCLOGINFO( @"cocos2d: deallocing %@", self);
[actionManager_ release];
[scheduler_ release];
[camera_ release];
[grid_ release];
[shaderProgram_ release];
[userObject_ release];
// children
CCNode *child;
CCARRAY_FOREACH(children_, child)
child.parent = nil;
[children_ release];
[super dealloc];
}
特别是失败child.parent = nil;
并出现EXC_BAD_ACCESS
错误。
关于问题可能是什么的任何想法?