#actionscript-3
#actionscript-3
Вопрос:
Это мой код ActionScript3, в котором я создал два текстовых поля и присвоил им текстовые форматы, а также два массива. Я хочу, чтобы значение массива находилось в новом текстовом поле при каждой итерации цикла for.Но он показывает только последнее значение элемента массива.Я думаю, что есть какая-то проблема с позицией y.Заранее спасибо.
var heading:Array = ["Home","About","Services","Contact"];
var subheading:Array = ["MyData","AboutUs","ServicesProvided","ContactUS"];
var i:int = 0;
var j:int = 0;
var headformat:TextFormat = new TextFormat();
headformat.size = 20;
headformat.color = 0xFFFFFF;
headformat.align = TextFormatAlign.CENTER;
var subformat:TextFormat = new TextFormat();
subformat.size = 15;
subformat.color = 0x000000;
subformat.align = TextFormatAlign.CENTER;
var headtext:TextField = new TextField();
headtext.width = 200;
headtext.text
headtext.height = 50;
headtext.background = true;
headtext.defaultTextFormat = headformat;
headtext.backgroundColor = 0x0000FF;
var subtext:TextField = new TextField();
subtext.width = 200;
subtext.height = 50;
subtext.background = true;
subtext.backgroundColor = 0xCCCCCC;
subtext.defaultTextFormat = subformat;
for(i=0;i<heading.length;i )
{
headtext.text = heading[i];
headtext.y = j;
addChild(headtext);
j = 60;
subtext.text = subheading[i];
subtext.y = j;
addChild(subtext);
j =60;
}
Ответ №1:
Проблема в том, что вы используете один и тот же экземпляр текстовых полей, просто помещаете создание текстовых полей в цикл, поэтому для каждой итерации он будет создавать еще один экземпляр текстового поля.
var headtext:TextField;
var subtext:TextField;
for(i=0;i<heading.length;i )
{
headtext = new TextField();
headtext.width = 200;
headtext.text
headtext.height = 50;
headtext.background = true;
headtext.defaultTextFormat = headformat;
headtext.backgroundColor = 0x0000FF;
subtext = new TextField();
subtext.width = 200;
subtext.height = 50;
subtext.background = true;
subtext.backgroundColor = 0xCCCCCC;
subtext.defaultTextFormat = subformat;
headtext.text = heading[i];
headtext.y = j;
addChild(headtext);
j = 60;
subtext.text = subheading[i];
subtext.y = j;
addChild(subtext);
j =60;
}