si en realidad ni siquiera necesite un contador, ya que cuando vas agregando cosas a un array, el lenght del mismo crece, por lo que hice esto:
Código :
private function loaders(source:String):void {
if (numChildren != 0) {
removeChild(this._baseBox);
}
xmlLoader = new XMLoader(source);
xmlLoader.addEventListener(XMLoader.XML_COMPLETO,cargar);
function cargar(event):void {
for (var i:uint = 0; i < xmlLoader.xml.children().children().length(); i++) {
thumbArray[i] = new ImageLoader(xmlLoader.xml.children().children()[i]. @ thumb,false);
thumbArray[i].name = i;
if (thumbArray.length == xmlLoader.xml.children().children().length()) {
thumbArray[i].addEventListener(ImageLoader.COMPLETE,pintarPantalla);
}
}
function pintarPantalla(e:Event):void {
//Asignación de valores a las variables para los thumbnails
_thumbWidht = e.target.width;
_thumbHeight = e.target.height;
boxMaker(_baseBox,false,false);
boxMaker(_thumbBox,true,true);
addChild(_baseBox);
_baseBox.addChild(_thumbBox);
dispatchEvent(new Event(COMPLETE));
}
}
}
por lo que cuando este condicional da la igualdad entre el lenght del xml y del array pum se terminaron de cargar todas las imagenes y puedo disparar un solo evento
Código :
if (thumbArray.length == xmlLoader.xml.children().children().length()) {
inicialmente hice lo del contador pero de casualidad cai en cuenta de que el lenght crecia en conjunto con la variable i del bucle for, por lo que obvie esta variable e hice una comparación de lenght directas.
te digo cuando me di cuenta que esta era la solución, me dije a mi mismo dios como algo tan simple me llevo tanto, por lo que creo voy a empezar a trabajar mas despierto x).