【问题标题】:Textfield autosize with cdata html text使用 cdata html 文本自动调整文本字段大小
【发布时间】:2012-06-07 16:25:36
【问题描述】:

我希望能够根据文本字段的动态数据更改多行文本字段的宽度和高度。高度不是问题,但宽度不会改变。宽度必须像单行文本字段一样自动调整大小。有没有办法做到这一点?

我有一个这样的 xml 数据:

<![CDATA[<b>some long text</b> <br> some long text <br> some long text ]]>

在动作脚本中:

tx_txt.autoSize = TextFieldAutoSize.LEFT;
tx_txt.htmlText = fromXML;

【问题讨论】:

标签: actionscript-3 flash actionscript


【解决方案1】:

我认为您只想将 multiline 设置为 true 并省略 width 属性,并且该字段应调整为中断前最长行的长度:

import flash.text.*;

var fromXML:String = "<b>some long text adfs afdsadfs afdsadfsfads</b> <br> some long text <br> some long text";

var tx_txt:TextField = new TextField();
tx_txt.autoSize = TextFieldAutoSize.LEFT;
tx_txt.multiline = true;
tx_txt.htmlText = fromXML;
tx_txt.border = true;

this.addChild(tx_txt);

【讨论】:

  • 这不是我想要的。我希望宽度自动调整大小。
  • 那么使用上面示例代码中的字符串,文本字段的宽度是否应该显示最长的行而不中断?
  • 是的,宽度应该是自动的。如果您将其设为 autosize="true",则单行文本字段有效。但是多行字段不能那样工作。
  • 我已经更新了我的答案。希望这就是您想要的。
  • 谢谢,这行得通。但我不明白其中的区别。我想我必须通过代码创建文本字段。它以前发生过。
猜你喜欢
  • 2013-03-28
  • 2015-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-28
  • 1970-01-01
  • 2020-04-16
  • 2012-11-23
相关资源
最近更新 更多