【已解决】问下关于内存释放

问下,退出一个界面的时候,看例子里面释放内存只要
m_pUILayer->removeFromParent();

CCSSceneReader::sharedSceneReader()->purgeSceneReader();
UIHelper::purgeUIHelper();
ActionManager::shareManager()->purgeActionManager();

这样就可以了,问一下,那在
CCSpriteFrameCache::sharedSpriteFrameCache()和
CCTextureCache::sharedTextureCache()需要不需要自己手动再去释放一下,看了内存,好像cache里面的总是没有删除

自己顶一下:3:

可以删除,注意删除顺序

什么顺序?为啥我用CCSpriteFrameCache::sharedSpriteFrameCache()释放资源以后,再重新打开这个layer的时候,
在UIWidget* uiWidget = CCUIHELPER->createWidgetFromJsonFile会crash?

我也遇到过这种问题,不知楼主是否已解决了呢
可否告知一下解决方案

此帖被hanrea在2013-10-24 21:43重新编辑 ]
同问, 如何解决的,
如果是replaceScene而非pushScene, 是否也需要 m_pUILayer->removeFromParent(); 这些

我用过2.2.1版本, 这是 cocostudio 的 bug.
createWidgetFromJsonFile 封装得 addplist 会带上路径(绝对路径, 从 user 开始…)
CCSpriteFrameCache addplist 却不会带路径.
你自己调试一下就知道.
CCSpriteFrameCache 释放的适合, 会把资源和路径(abc.png)一起释放掉. 但是 user/…/abc.png, 这个路径不会被释放.
下一次,createWidgetFromJsonFile时, 会发现路径user/…/abc.png, 所以不加 plist. 当然 crash