2013-09-24 21 views

回答

6

看来,你的孩子是从场景中取出后,简单地销毁。在cocos2d-x中有一个类似Objective-C的引用计数系统,它会在从父代中删除后减少这个精灵的引用计数。如果计数器达到0值,则节点将被销毁。请确保你的精灵是不是通话scene->addChild(sprite);

sprite->retain(); 
scene->removeChild(sprite); 
scene->addChild(sprite); 
sprite->release(); 

每次自己打电话retain时间之前空,你必须在呼叫释放后,以防止泄漏。

+0

谢谢,你知道如何保持它不为空,即使它被删除? –

+0

非常感谢你 –

+0

不客气。你可以标记这个答案是正确的,让其他人觉得它更容易 – Morion

1

删除您需要保留,并重新加入之后,你需要释放精灵之后。

sprite->retain(); 
scene->removeChild(sprite); 
scene->addChild(sprite); 
sprite->release(); 
相关问题