Ver Mensaje Individual
  #1 (permalink)  
Antiguo 04/03/2009, 04:21
riestra
 
Fecha de Ingreso: febrero-2009
Mensajes: 77
Antigüedad: 15 años, 3 meses
Puntos: 0
Leer XML sin urlLoader.addEventListener

Hola, trabajo con Flex, GoogleMaps y una BD Sql.
Necesito crear objetos que son marcas en el mapa, para ello creo por cada marca un InfoWindowTabbedComponent.

Cada vez que creo un objeto, creo un InfoWindoTabbedComponent, y cada vez que creo este infow... en su código llamo a la función getData, que a su vez llama a readXML cuando even.COMPLETE==true; Es decir cuando se ha recibido todo el XML se lee, pero no justo a continuación sino que queda a la espera,el programa continúa y este paso queda relegado al final del programa.

Código:
public function InfoWindowTabbedComponent(m:Marker,id_m:int) {
    
   //  Codigo
          
    getData();
    
   //  Más código
   
}

public function getData():void {
    //Código
     urlLoader.addEventListener("complete",readXml);
}

public function readXml(event:Event):void{
        var fotosXML:XML = new XML(event.target.data);
        //Código;
}

Bien, tal y como está cuando yo creo 4 objetos Infow, se crea el InfoWindow...1, se ejecuta getData(), y NO se lanza todavía readXML, sino que queda a la espera, luego viene el InfoWindow...2, se ejecuta getData para este segundo objeto, y NO se lanza todavía readXML para este InfoWindow...2, tambien queda a la espera, y así sucesivamente hsata que se creen todos los objetos y al final es cuando se lanza readXML para el InfoWind...1, readXML para el InfoWind....2, etc.

Yo necesito que los readXML NO se lancen juntos al final, sino que cuando se cree el InfoWind...1, y ejecute getData a continuación ya se lance readXML para ese InfoWind...1, ya luego creamos InfoWind....2, se ejecuta getData para InfoWindow....2, y lanzamos readXml para InfoWind....2

¿Cómo lo hago???? Espero que ahora haya quedado más claro y fácil de entender el problema.