开发者

calculating Spark TextArea width

I am treating a spark TextArea as text input(by setting heightInLines="1"). The TextArea is part of an mxml component and I want to resize the component when the text is changed.

I haven't been able to use textArea.measureaText(textArea.text) to get line metrics and use it. I get this error "Parameter antiAliasType must be non-null."

Is there any way to get the wi开发者_高级运维dth of a TextArea which it is going to consume at runtime for a particular string or a particular TextFlow?


A little ugly but works for me:

var uiText:UItextField = new UITextField();

// if you have custom text style on the TextArea then set it the same of this uitextfield
uiText.setTextFormat("bla bla bla");

uiText.text = "This is the text that I want the size for";

var textW:Number    = uiText.textWidth;
var textH:Number    = uiText.textHeight;

// then we need to consider also the border of the text area and the paddings
// try read the padding values and border sizes using getStyle(...)

myTextArea.width    = textW+2*borderW+paddingL+paddingR;
myTextArea.height   = textH+2*borderH+paddingT+paddingB;

That should be all

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜