removeFromParentAndCleanup是不是有问题

版本2.2.3


void Widget::removeFromParentAndCleanup(bool cleanup)
{
    CCNodeRGBA::removeFromParentAndCleanup(cleanup);
}

addChild时会插入_widgetChildren,这里这样移除不就漏了?

CCNode通过addNode加入到Widget,移除时用removeFromParentAndCleanup或CCRemoveSelf都没处理Widget里的_nodes。

你的node应该创建时候采用自动释放,添加到widget的时候添加引用即可。

不好意思,自己写了个test 发现前面大部分理解都是错误的,把问题重新整理了一下:


widget:addNode(node,0,9377);
node:removeFromParentAndCleanup(true);
nodeGhost = widget:getNodeByTag(9377);
widget:addNode(nodeGhost,0,9377);

node通过removeFromParentAndCleanup移除后 还是能通过getNodeByTag取到。