一旦我在flex标签上设置了width
或percentWidth
属性,是否有办法将宽度重置为默认值(即文本的宽度加上填充)?
我正在使用标签作为渲染器。在某些情况下,我希望它能自动调整大小,在其他情况下,我希望它是容器的百分比宽度。显然,我可以使用两个单独的标签,一个用于上述每种情况,但我很好奇是否可以将标签重置为默认行为。
答案 0 :(得分:8)
label.width = NaN;
//not sure if the following lines are required
label.invalidateSize();
label.width = label.measuredWidth;
当您设置组件的特定高度和宽度时,即使您显式调用invalidateSize()方法,Flex也不会调用measure()方法。也就是说,如果组件的explicitWidth属性或explicitHeight属性为NaN,则Flex仅调用measure()方法。
答案 1 :(得分:1)
将宽度设置为undefined:
yourLabelId.width = undefined;