解决方法:我犯二了,问题不出在ui动画上,因为这部分我已经修正了源码的BUG,并且进行了stop()调用
原因是没有在onExit()中调用父类的onExit方法 Layer::onExit();
真是乌龙了。。。不过顺便研究透了ui动画的BUG也算回本了吧
跟踪代码来看是在 CCDirector.cpp 文件中的 _scenesStack.clear();这步崩溃的。
控制台有输出 cocos2d: removeAction: Target not found
这是播放UI动画的代码:
auto StartUpUI = dynamic_cast(GUIReader::getInstance()->widgetFromJsonFile("anime/TestUI_1.json"));
this->addChild(StartUpUI, 3, 8);
uiAnime = cocostudio::ActionManagerEx::getInstance()->getActionByName("TestUI_1.json","Animation1");
uiAnime->play();
```
这是退出时释放的代码:
void HelloWorld::onExit(){
uiAnime->stop();
ActionManagerEx::getInstance()->releaseActions();
//cocostudio::ActionManagerEx::getInstance()->releaseActionsByJsonName("TestUI_1.json");
cocostudio::ActionManagerEx::destroyInstance();
}
```
其实释放这几步都没崩溃,是在这之后的_scenesStack.clear();的时候崩溃的
网上搜了大量资料,类似的帖子全部看过了,但还是没解决
折腾几天了。。。请高手99我。。。
