我已经在cocos2d中工作了几年。切换到v3后,我真的很想念能够覆盖cleanup
函数的功能。在我的子画面中,通常会以类似于以下的方式执行所有清理工作:
-(void)cleanup {
// Do other cleanup that is not covered by super.
// Call super cleanup.
[super cleanup];
}
对于v3,似乎
cleanup
函数是CCNode
专用的,不能被覆盖。使用这种方法的主要原因是可以通过简单的removeFromParent
调用自动调用该函数。除了编写我的
destroy
函数并手动调用它以外,还有人建议在v3中做什么吗? 最佳答案
取决于用例。
通常,我只调用[node removeFromParentAndCleanup:YES]
,足以满足我的需要。
如果要直接访问cleanup
子类中的私有CCNode
方法,则应仅在头文件中导入CCNode_Private.h
而不是CCNode.h
。
关于ios - cocos2d v3覆盖清除,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23644501/