views:

743

answers:

2

HI,

I need to loop through an array and for each element create a textfield. My problem is how to create a new identifier for each new TextInput

this is my code;

var count:Number = 0;
for (var i:String in columnsData)
{
var myTI:TextInput = new TextInput();
myTI.width = 70;
myTI.height = 25;
myTI.text = columnsData[i];
myTI.name = "myTI" + count;
addChild(myTI);
count++;    
   }

all this does however is overwrite the previously created TextInput field, any ideas?

+1  A: 

Try this:

var count:uint = 0,
    textInputs:Array /* of TextInputs */ = [];
for(var i:String in columnsData){
    textInputs[count] = new TextInput();
    // Customize textInput[count] instead of myTI
    addChild(textInputs[count]);
    count++;
}

Outside of this loop, you should be able to look inside the textInputs array for references to each of your new TextInputs. Note that, inside the loop, you probably want to change the x/y coordinates for each TextInput so they don't overlap.

Ron DeVera
cheers did something similiar and it worked
combi001
A: 

how can i access the first,second n so on textfields from the array.........

kavita sharma