1

このようなLabelコンポーネントを作成しています

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

ただし、幅と高さを明示的に設定するまでは表示されません。
テキストに応じてラベルのサイズを自動変更するにはどうすればよいですか?

4

3 に答える 3

4

ここで私の質問に対する答えを見つけました
解決策は、ラベルのmeasureText()関数を呼び出すことです

var lineMetrics:TextLineMetrics = label.measureText(label.text);
label.width = lineMetrics.width;
label.height = lineMetrics.height;
于 2011-03-12T13:48:29.310 に答える
3

また、上記の回答はスパークコンポーネントでは機能しないようです。しかし、これは私にとってはうまくいきます。

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

于 2011-09-09T01:49:52.990 に答える
1

を使用label.percentWidth = 100;して、ラベルがテキストとともに自動的に拡大できるようにする必要があります。1行のままにしておきたい場合は、maxDisplayedLines = 1;プロパティも設定する必要があります。

addElement(label)の代わりに使用することもできますaddChild(label)

于 2011-03-11T21:33:04.427 に答える