Label.string动态更新后,其UITransform.width没有更新

  • Creator 版本: 3.4.0

  • 目标平台: Edge

  • 重现方式:Overflow = NONE,代码中给Label.string赋值,赋值前后的UITransform.width不变,尝试调用updateRenderData()方法及下一帧获取都不行。

我现在需要取到更新后的label宽度,请问有什么办法?

回退3.3.2没毛病

这个问题我早就发过了,不过似乎他们略过我的消息了,估计消息太多,我发在3.4.1 beta帖子那里,收没收到我就不知道了,他们收集问题的效率不高,github issue我懒得发了

难受 :mask:

直接调用 updateRenderData(true) 。下一帧获取不行吗,是在 update 获取的下一帧还是?

这个问题,我最终发现是因为UIOpacity组件导致的,UIOpacity.opacity = 0 的时候,设置label.string是不会更新width的,opacity = 1的时候可以
代码如下:

1赞

哦,了解,因为不渲染了,所以不更新数据了,但是强制执行 updateRenderData(true) 应该还是可以的

该主题在最后一个回复创建后14天后自动关闭。不再允许新的回复。