Search code examples
actionscript-3loopsfor-loopmxml

Creating multiple TextInput fields in for loop


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?


Solution

  • 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.