读取,销毁ui编辑器创建的文件,内存泄漏如何解决?

读取,销毁UI编辑器创建的文件,内存泄漏如何解决?
大致如下:

TouchGroup* pLayerRoot = new TouchGroup::create();

TouchGroup* pLayerPage = new TouchGroup::create();
pLayerRoot->addChild(pLayerPage);
//读取
UIWidget* pWidgetRoot = GUIReader::shareReader()->widgetFromJsonFile(“test.json”);
pLayerPage->addWidget(pWidgetRoot);
//销毁
pLayerRoot->removeChild(pLayerPage,true);

多次读取,销毁会发现内存不断增加

请问楼主使用的版本号是多少?
我们也会在最新的版本中进行测试,测试结果会即使反馈给你。

最新版本: CocoStudio v1.3.0.1 + Cocos2D-X 2.2.3

楼主您好,
请先调用
pLayerPage->removeWidget(pWidgetRoot);
再调用
pLayerRoot->removeChild(pLayerPage,true);

还是一样哦,内存还会涨,调clear()也一样

pLayerPage->clear();
pLayerRoot->removeChild(pLayerPage,true);

楼主,TouchGroup请不要嵌套使用,TouchGroup只是负责touch事件的分发,还有 new 出来的TouchGroup在remove时不会自动销毁,因为没有autorelease

没有autorelease 吗?

//
TouchGroup* TouchGroup::create(void)
{
TouchGroup *pRet = new TouchGroup();
if (pRet && pRet->init())
{
pRet->autorelease();
return pRet;
}
else
{
CC_SAFE_DELETE(pRet);
return NULL;
}
}

没有autorelease 吗?

//
TouchGroup* TouchGroup::create(void)
{
TouchGroup *pRet = new TouchGroup();
if (pRet && pRet->init())
{
pRet->autorelease();
return pRet;
}
else
{
CC_SAFE_DELETE(pRet);
return NULL;
}
}

哦,是笔误,没有new
如果是TouchGroup的嵌套问题,改成如下是否可以解决问题?

CCLayer* pLayerRoot = CCLayer::create();

TouchGroup* pLayerPage = TouchGroup::create();
pLayerRoot->addChild(pLayerPage);
//读取
UIWidget* pWidgetRoot = GUIReader::shareReader()->widgetFromJsonFile(“test.json”);
pLayerPage->addWidget(pWidgetRoot);
//销毁
pLayerRoot->removeChild(pLayerPage,true);