CCLabelTTF的setString在真机上崩溃的问题(2.1.4)

在Win下开发没有任何的问题,但是到了真机上会时不时的发生crash

跟进到问题点居然是setString在作梗。暂时没有办法解决。估计是cc2dxlib的BUG

解决方案是不要使用这个函数,每次都create一个新的CCLabelTTF对象,并在这之前删除掉原来的对象。

示例代码如下:

removeChildByTag(6);
setVisible(true);
cocos2d::CCLabelTTF* context  = CCLabelTTF::create(_szContext.c_str(), "", _fontSize);
addChild(context);
context->setTag(6);

以上的代码验证以后是可行的~不会出现crash的情况

再研究一下其它两种字体控件,那两种的效率要高得多。

看了CCLabelTTF的源码,做一次setString跟create差不多的,只是不用重复设置字体和大小。

是需要重新更新纹理的。



你可能感兴趣的:(CCLabelTTF,setString)