添加同一对象As3的多个子节点

时间:2015-03-28 02:20:56

标签: actionscript-3 flash

我一直致力于一个flash项目,我正在制作一个成就显示,每个成就进度都完成,奖励完成。我想在舞台上添加多个textFields,并分别为每个文本添加文本。我有30个文本框,我认为有更好的方法来添加它们,而不是为每个文本框创建不同的类。

public var progress1:textField = new textField();
public var progress2:textField = new textField();
public var progress3:textField = new textField();
public var progress4:textField = new textField();

...And so on until 30 

有没有办法添加它们并使用for循环更改它们的文本,因为这似乎不是一种有效的方法。 我还必须将一个影片剪辑添加到舞台上30次,并且每次都有一种方法可以在for循环中进行更改。

1 个答案:

答案 0 :(得分:0)

您可以将文本字段保存在这样的矢量中。

var texts:Vector.<TextField> = new Vector.<TextField>();

var num:int = 30;

for (var i:int = 0; i < num; i++)
{
   texts.push(new TextField());
}

//change the text in a loop;
var content:Array = ["text1", "text2" ...];//the contents for the texts to show

var max:int = Math.max(content.length, texts.length);

for (var j:int = 0; j < max; j++)
{
   texts[j].text = content[j];
}