更换场景时,图层不会破坏

时间:2014-03-07 11:42:03

标签: cocos2d-x

有人有同样的问题吗?我已将图层添加到场景中。但是当场景退出并调用其析构方法时,不会调用图层的析构方法。这是代码:

void TowerScene :: init()
{

    addchild(Tower::create());
    retrun true;
}

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

在添加代理对象时,

CCTouchDispatcherCCKeyboardDispatcherCCScheduler或其他单身人士在代理对象上使用retain,因此,引用计数器将保持递增,直到委托被删除为止。如果手动将图层作为委托添加到调度程序或其他,则必须在onExit方法中手动删除(取消删除)委托。

要查找问题,您还可以覆盖virtual void retain()公共方法并在其中设置断点。 Backtrace将显示,其中引用计数器递增。

P.S。请确保调用initonEnteronExit和其他重写方法的超级方法。 C ++方式:SuperClass::method()