开发版本:2.3.1,浏览器环境,
需求是动态获取文本内容,如果超过宽度限制就换行处理,现在节点的宽度无法取到,导致horizontalAlign与overflow都没生效。
看论坛很多人说用label_updateRenderData(true);,但是在ts环境下,报错_updateRenderData is not a function,
还有人说要等下一帧,下一帧要通过一个计时器吗??我试了不太行啊。
求ts使用label的正确打开方式。
开发版本:2.3.1,浏览器环境,
需求是动态获取文本内容,如果超过宽度限制就换行处理,现在节点的宽度无法取到,导致horizontalAlign与overflow都没生效。
看论坛很多人说用label_updateRenderData(true);,但是在ts环境下,报错_updateRenderData is not a function,
还有人说要等下一帧,下一帧要通过一个计时器吗??我试了不太行啊。
求ts使用label的正确打开方式。
你直接拿节点得width不是吗
拿不到,始终是0
this.label_forceUpdateRenderData(true) 这个可以
2.0 版本用的是 _updateRenderData,后面改名了 _forceUpdateRenderData 函数。但是这都是未公开的私有方法,不建议直接用。如果你只是想触发 _forceUpdateRenderData,可以设置 label.enable = false,再设置为 true, 这样等于触发了一次 _forceUpdateRenderData。