我在使用LabelTTF,设置dimensions ,当不停改变FontSize时,100%会出现浏览器卡死。
我修改cocos2d里面自带的例子,把dimensions 的值设得很小,width=8,一进入场景浏览器就卡死了。
我用的是cocos2d-js 3.0final版本
我在使用LabelTTF,设置dimensions ,当不停改变FontSize时,100%会出现浏览器卡死。
我修改cocos2d里面自带的例子,把dimensions 的值设得很小,width=8,一进入场景浏览器就卡死了。
我用的是cocos2d-js 3.0final版本
如果不设置dimensions ,就没有问题
cc.LabelTTF 里面 _updateTTF 方法有下面代码
for(i = 0; i < this._strings.length; i++){
this._checkWarp(this._strings, i, locDimensionsWidth);
}
_checkWarp 方法里有下面代码
strArr.splice(i, 0, sText); 这行代码是往strArr数组里新加一个文本,strArr是上面_updateTTF 方法里的_strings,
_checkWarp方法不停的改变_strings的长度,而_updateTTF 里在不停的遍历。如果文字换行比较多的话,这里就会卡死了
感觉反馈。我们检查看看。
这个事因为系统消耗过大了。
因为每次更改font相关的参数,font都要重新计算需不需要换行之类的。。。
一只更改的话,就会造成计算量急剧上升咯~~
一般为了优化性能,也不会一只更改font相关参数的哦~~
我修改cocos2d里面自带的例子,把dimensions 的值设得很小,width=8,一进入场景浏览器就卡死了
这和系统消耗过大没关系,是逻辑本身有bug
额。。。你测试的文字是啥?
我也去试试~~
谢谢反馈吖~~~
的确啊。。。
暮然回首~~bug还在灯火阑珊处= =。。
哈哈。谢谢啦。。。
你试试这么改应该就不会循环报错了、
https://github.com/cocos2d/cocos2d-html5/pull/2425/files
谢谢吖~~