设置显式宽度后,将flex标签宽​​度重置为"auto"?

Sam*_*tin 5 apache-flex layout label actionscript-3

一旦我在flex标签上设置了width或者percentWidth属性,有没有办法将宽度重置为默认值(即文本的宽度加上填充)?

我正在使用标签作为渲染器.在某些情况下,我希望它能自动调整大小,在其他情况下,我希望它是容器的百分比宽度.显然,我可以使用两个单独的标签,一个用于上述每种情况,但我很好奇是否可以将标签重置为默认行为.

Ama*_*osh 8

label.width = NaN;
//not sure if the following lines are required
label.invalidateSize();
label.width = label.measuredWidth;
Run Code Online (Sandbox Code Playgroud)

来自flex livedocs

设置组件的特定高度和宽度时,即使显式调用invalidateSize()方法,Flex也不会调用measure()方法.也就是说,如果组件的explicitWidth属性或explicitHeight属性为NaN,则Flex仅调用measure()方法.