creo un MovieClip che contiene la lista di altri MovieClip pre costruiti in libreria capaci di autoassegnarsi valore e testo
li sistemo e gli imposto addEventListener per evento mouse
al click carico l'altro MovieClip lista2 che fa la stessa cosa.
A questo punto ho le mie due liste costruite il problema è che non riesco a svuotare lista2 dai propri movieclip per ririempirla secondo la selezione della lista1
Codice PHP:
var myList1:MovieClip = new MovieClip();
var myList2:MovieClip = new MovieClip();
var myArray1:Array = new Array(['', 0], ["Auto",1], ["Moto",2], ["Biciclette",3]);
var myArray2:Array = new Array([['',0]], [["Lamborghini", 1], ["porsche", 2], ["Ferrari",3]], [["Ducati", 1], ["Honda", 2]]);
addChild(myList1);
var mySpacer=50;
var myY=0;
for each (var item in myArray1){
var myItemList:MovieClip = new MovieClip();
var myText:TextField = new TextField();
myText.text = item[0];
myItemList.y=myY;
myItemList['indice'] = item[1];
myItemList.addChild(myText);
fnc_addListener(myItemList);
myList1.addChild(myItemList);
myY=myY+mySpacer;
}
function fnc_addListener(obj){
obj.buttonMode = true;
obj.addEventListener(MouseEvent.MOUSE_UP, fnc_list1Up);
}
function fnc_list1Up(e:MouseEvent){
var clicked = e.currentTarget['indice'];
fnc_loadList2(clicked);
}
var livello:Number = 0;
function fnc_loadList2(indice:Number){
myList2.x = 150;
myY=0
addChild(myList2);
for (var i:Number = 0; i<myList2.numChildren; i++){
if(myList2.numChildren>0){
myList2.removeChildAt(i);
}
}
livello = 0;
for each (var item in myArray2[indice]){
var myItemList:MovieClip = new MovieClip();
var myText:TextField = new TextField();
myText.text = item[0];
myItemList.y=myY;
myItemList['indice'] = item[1];
myItemList.addChild(myText);
fnc_addListener(myItemList);
myList2.addChildAt(myItemList,livello);
myY=myY+mySpacer;
livello++;
}
}
perchè la fnc_loadList2(indice:Number); se è già stata costruita non si svuota ma gli itemList si sovrappongono.
Come fare?