设置BitmapText的.text属性后,.textWidth在渲染之后才正确。 在进行重新定位计算时,必须使用requestAnimationFrame()等待。 这是预期的行为吗?
错,这是目前的预期行为,因为这就是代码的作用,但是我们可以做得更好;)
您会看到,出于性能原因,只有在渲染文本后才会对其进行更新。 想象一下,您有一个计数器,可以快速计数。 您不希望在文本类中重新创建每个数字,因为只有在渲染该数字时,您才需要使用它来显示正确的内容。
例如,普通的Text类确保当您尝试获取其宽度时,它会在渲染循环之外更新文本,以确保返回的值准确且最新。 BitmapText不会这样做(但应该这样做)。
创建修复程序后,可以在查询.textWidth之前在对象上调用.updateText()。 这应该为您提供准确的测量结果,而无需等待皇家空军
解决方法是将当前.textWidth设置为私有._textWidth,创建一个名为.textWidth的只读getter,该方法将在返回._textWidth之前调用.validate();
对于.width(和高度)的吸气剂,我相信它应该在返回宽度之前调用.updateTransform()
.validate是我一直在寻找的东西。 谢谢 :)。 如果有机会,我将在今晚晚些时候实施+ pr。
该线程已被自动锁定,因为它关闭后没有任何近期活动。 请为相关的错误打开一个新的问题。