设置Label的内容后,label的size并没有改变

  • Creator 版本:CocosCreator_v2.0.7-beta.4

  • 目标平台:

想做一个通用的弹窗,需求是当文字不超过一行时,水平对齐方式为居中对齐,超过一行的时候,水平对齐方式为左对齐。然后我在label.string = ‘一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十’;后,根据label.node.width来判断启用哪种方式,发现label.node.height还是单行的高度。然后延迟了10毫秒在判断,就是真实的高度了。

会在下一帧刷新,好像有一个强制刷新的接口

label._updateRenderData(true);

1赞

我用2.0.7版本的,提示没有这个函数,是已经废弃了吗?那这个问题只有延迟了解决了吗?

2.4 没有这个方法了要怎么解决?

2.4没有 _updateRenderData 这个方法要怎么解决

let label;
label.string = '';
label['_forceUpdateRenderData'](true);
let width = label.width;
1赞