堆叠动态文本字段 Flash/ActionScript 3

Posted

技术标签:

【中文标题】堆叠动态文本字段 Flash/ActionScript 3【英文标题】:Stacking Dynamic Text Fields Flash/ActionScript 3 【发布时间】:2013-03-03 00:33:20 【问题描述】:

我正在通过基于 XML 文件的循环添加一系列文本字段。字段的宽度始终为200 px,因此根据 XML 节点中包含的文本量,文本字段的高度会有所不同。我需要一种方法将这些字段堆叠在一起,根据它们的高度加上每个字段之间的10 px 空间。以下是我创建文本字段的方式。

for(var i:int; i < xml.item.length(); i++)

    var theText:TextField = new TextField();
    addChild(theText);
    theText.wordWrap = true;
    theText.width = 200;
    theText.antiAliasType = AntiAliasType.ADVANCED;
    theText.autoSize = TextFieldAutoSize.LEFT;
    theText.selectable = false;
    theText.htmlText = xml.item[i].@theText;
;

【问题讨论】:

【参考方案1】:

您可以使用文本字段的高度来跟踪高度。

var startHeight:int = 0;
for(var i:int; i < xml.item.length(); i++)

    var theText:TextField = new TextField();
    addChild(theText);

    theText.y = startHeight;

    theText.wordWrap = true;
    theText.width = 200;
    theText.antiAliasType = AntiAliasType.ADVANCED;
    theText.autoSize = TextFieldAutoSize.LEFT;
    theText.selectable = false;
    theText.htmlText = xml.item[i].@theText;

    startHeight += theText.height + 10;

【讨论】:

谢谢!我知道这很简单。对于遇到此问题的其他人来说只有一个小改动,第一行应该是:“var startHeight:int = 0;” 哈哈是的,编辑过多的 C++/AS3 混合有时会这样 :)

以上是关于堆叠动态文本字段 Flash/ActionScript 3的主要内容,如果未能解决你的问题,请参考以下文章

使用动态约束对齐文本字段

从动态输入字段 JavaScript 读取文本

在动态表格视图中获取文本字段值

动态改变文本字段的文本颜色

根据文本字段值动态更改容器大小

建议使用自动布局约束动态添加标签和文本字段的逻辑