Как настроить Flex Spark Label для автоматического изменения размера? - PullRequest
1 голос
/ 11 марта 2011

Я создаю компонент Label следующим образом:

var label:Label = new Label();
label.text = "some text";
label.styleName = "someStyle";
addChild(label);

Но он остается невидимым, пока я не установлю ширину и высоту явно.
Как сделать так, чтобы размер этикетки автоматически изменялся в соответствии с еготекст

Ответы [ 3 ]

4 голосов
/ 12 марта 2011

Я нашел ответ на свой вопрос здесь
Решение состоит в том, чтобы вызвать функцию measureText () для метки

var lineMetrics:TextLineMetrics = label.measureText(label.text);
label.width = lineMetrics.width;
label.height = lineMetrics.height;
3 голосов
/ 09 сентября 2011

Я также заметил, что приведенный выше ответ не работает с искровыми компонентами.Это, однако, работает для меня.

label.width = label.measuredWidth;label.height = label.measuredHeight;

1 голос
/ 12 марта 2011

Вы должны иметь возможность использовать label.percentWidth = 100;, чтобы позволить метке автоматически расти вместе с текстом.Если вы хотите, чтобы он оставался на одной строке, вы также можете установить свойство maxDisplayedLines = 1;.

Вы также можете использовать addElement(label) вместо addChild(label).

...