在IDE里面运行游戏时再次调用ccs.NodeReader:getInstance():createNode这个方法的时候有很大的概率会使程序崩溃,抛以下的exception:
Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 org.cocos2dx.MOBA 0x000000010af66608 cocos2d::ui::Widget::releaseUpEvent() + 200
1 org.cocos2dx.MOBA 0x000000010af664cd cocos2d::ui::Widget::onTouchEnded(cocos2d::Touch*, cocos2d::Event*) + 205
2 org.cocos2dx.MOBA 0x000000010af6de0a std::__1::__function::__func<std::__1::__bind<void (cocos2d::ui::Widget::)(cocos2d::Touch, cocos2d::Event*), cocos2d::ui::Widget*, std::__1::placeholders::__ph<1>&, std::__1::placeholders::__ph<2>&>, std::__1::allocator<std::__1::__bind<void (cocos2d::ui::Widget::)(cocos2d::Touch, cocos2d::Event*), cocos2d::ui::Widget*, std::__1::placeholders::__ph<1>&, std::__1::placeholders::__ph<2>&> >, void (cocos2d::Touch*, cocos2d::Event*)>::operator()(cocos2d::Touch*&&, cocos2d::Event*&&) + 890
3 org.cocos2dx.MOBA 0x000000010b12f53b std::__1::function<void (cocos2d::Touch*, cocos2d::Event*)>::operator()(cocos2d::Touch*, cocos2d::Event*) const + 187
4 org.cocos2dx.MOBA 0x000000010b11f775 cocos2d::EventDispatcher::dispatchTouchEvent(cocos2d::EventTouch*)::_3::operator()(cocos2d::EventListener*) const + 1973
5 org.cocos2dx.MOBA 0x000000010b11ef1f std::__1::__function::__func<cocos2d::EventDispatcher::dispatchTouchEvent(cocos2d::EventTouch*)::_3, std::__1::allocatorcocos2d::EventDispatcher::dispatchTouchEvent(cocos2d::EventTouch*)::$_3, bool (cocos2d::EventListener*)>::operator()(cocos2d::EventListener*&&) + 95
我写的逻辑是关闭一个面板打开另外一个面板时候调用的createNode,在Xcode里面运行时没有问题的,不会出错。如果不关闭之前的面板而调用打开新面板的话是没有崩溃的