2015-03-28 5 views
0

Я работаю над флеш-проектом, и я делаю показы достижений с каждым достижением прогресса и наградой за завершение. Я хотел бы добавить несколько текстовых полей на сцену и добавить текст к каждому в отдельности. У меня есть 30 текстовых полей, и я думаю, что есть лучший способ добавить их, чем создавать разные классы для каждого.Добавление нескольких детей одного и того же объекта As3

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 

Есть ли способ их добавления и изменения их текст для цикла, так как это не кажется, как эффективный способ сделать это. Мне также нужно добавить видеоклип на сцену 30 раз и каждый раз менять его y, есть способ сделать это в цикле for.

ответ

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]; 
} 
+0

Спасибо, что так много работало – TomMcmann

Смежные вопросы