我正在创建这样的标签组件
var label:Label = new Label();
label.text = "some text";
label.styleName = "someStyle";
addChild(label);
但在我明确设置宽度和高度之前,它一直是不可见的。
如何使标签根据其文本自动调整大小?
我正在创建这样的标签组件
var label:Label = new Label();
label.text = "some text";
label.styleName = "someStyle";
addChild(label);
但在我明确设置宽度和高度之前,它一直是不可见的。
如何使标签根据其文本自动调整大小?
我在这里
找到了我的问题的答案
解决方案是为标签调用 measureText() 函数
var lineMetrics:TextLineMetrics = label.measureText(label.text);
label.width = lineMetrics.width;
label.height = lineMetrics.height;
我还注意到上述答案似乎不适用于火花组件。然而,这对我有用。
label.width = label.measuredWidth; label.height = label.measuredHeight;
您应该能够使用label.percentWidth = 100;
允许标签随文本自动增长。如果您希望它保持在单行上,您还需要设置该maxDisplayedLines = 1;
属性。
您可能还想使用addElement(label)
而不是addChild(label)
.