CocosCreator2.2版本调用_updateRenderData方法报错

之前是用的2.1.3写的一个跑马灯,改完Label的stirng后Label节点的宽度不会及时更新,手动调一下_updateRenderData方法就可以了,后面升级了2.2版本,再运行项目就直接报错了。

刚翻了一下引擎的源码,发现2.2Label实现已经把_updateRenderData这个方法去掉了,可以直接调用_forceUpdateRenderData来解决Label宽度更新不及时的问题

我的工程中没有调用_updateRenderData,难道是要去改源码吗?

你要改源码干嘛?2.1.3版本里刷新Label用_updateRenderData, 2.2.0版本刷新Label用_forceUpdateRenderData

哥们,找不到改方法:cold_sweat:

你这个是2.2版本吗?你直接到CCLabl里面去看看吧


用过了字库,这里必然报错

1赞

这个问题在2.2.1版本已经修复,已验证

1赞

被坑了。。。这种函数不应该改吧

1赞

话说Creator 团队怎么老是改引擎的函数呀,而且手册也不同步!

1赞

我也觉得,这也太不专业了!!!感觉像临时工干的活,这些东西你三天两头换…

1赞

哈哈,我今天也被这个函数坑了

乱改先不说了,关键这种函数还没有文档,

建议这种用的经常可能会用的的函数最好写到creator.d.ts里吧,ts开发的时候就一条红线,我是遇到一个,自己就手动加到creator.d.ts里

1赞

我都懒得改creator.d.ts,直接写any

    (<any>this.label)._forceUpdateRenderData(true);
1赞