Вытащите ваше объявление var newTab = new Tab();
из цикла for, чтобы ваш код выглядел следующим образом:
var newTab:Tab;
for(var i:int = 0; i < 5; i++){
newTab = new Tab();
newTab.toptxt.text = nameArray[i]; //nameArray is fine
trace(newTab.toptxt.text); //returns expected value, textfield isn't
newTab.bottomtxt.text = jobs[i];
bottom.addChild(newTab); //bottom is a class var.
newTab.x = i * (newTab.width + 3);
}
Actionscript становится запутанным, когда вы создаете экземпляр и назначаете newTab в качестве указателя на него,вместо того, чтобы сначала создать указатель или ссылку, а затем создать новые экземпляры и добавить их в свой displayList.
Кроме того, проследите ваши выходные данные nameArray [i] и убедитесь, что эти значения верны (т. Е. trace(nameArray[i]);
. Возможно, данные ранее не были правильно установлены в вашем коде.