as3动态StageText / NativeText的名称

时间:2012-08-07 13:07:02

标签: actionscript-3

有没有人知道如何动态地为NativeText / StageText指定名称,因为我正在尝试构建动态界面而不是硬编码,任何帮助都将不胜感激!

3 个答案:

答案 0 :(得分:1)

您应该保留对动态创建的StageText实例的引用,因为您无法通过查询显示列表(因为它不在显示列表中)来获取它。你可以拥有StageText的矢量

var m_vStageTextInstances:Vector<StageText>;

然后你将迭代这个向量。

答案 1 :(得分:0)

这是一些在iterate-function

中执行所需操作的示例代码
public class IterationTest extends Sprite {

    public function IterationTest() {
        createObjects();
        iterate();
    }

    private function createObjects():void {
        for (var i:int = 0; i < 1000; i++) {
            addChild(new TextField());
            addChild(new MovieClip());
        }
    }

    private function iterate():void {
        var numTextObjects:int = 0;
        for (var i:int = 0; i < this.numChildren; i++) {
            var child:DisplayObject = getChildAt(i);
            if (child is TextField) {
                //do your stuff here
            }
        }
    }

}

答案 2 :(得分:0)

如果有人试图使用NativeText返回文本值,则使用StageText包装器。他们需要编辑;

https://github.com/cantrell/StageTextExample/blob/master/src/NativeText.as

添加公共获取功能 -

public function get text():String {
return this.st.text;
}

然后你可以正常返回NativeText值 -

nt.text