使用cocos2dx版本为 3.3
原贴
https://github.com/cocos2d/cocos2d-x/issues/8305
部分逻辑修改
https://github.com/cocos2d/cocos2d-x/commit/ece379bc64f4eb7273354a05abdff8d9736f4603
修改好CCFontAtlas.cpp和.h部分后,在修改cclabel.cpp
cclabel.cpp中修改
把_purgeTextureListener 和_resetTextureListener 前的auto 去掉
把
_eventDispatcher->addEventListenerWithSceneGraphPriority(_purgeTextureListener, this);
_eventDispatcher->addEventListenerWithSceneGraphPriority(_resetTextureListener, this);
修改为
_eventDispatcher->addEventListenerWithFixedPriority(_purgeTextureListener, 1);
_eventDispatcher->addEventListenerWithFixedPriority(_resetTextureListener, 1);
在Label::~Label()中 添加
_eventDispatcher->removeEventListener(_purgeTextureListener);
_eventDispatcher->removeEventListener(_resetTextureListener);
在cclabel.h 初始化
EventListenerCustom* _purgeTextureListener;
EventListenerCustom* _resetTextureListener;
修改之后从新编译lib库