Comunidad de diseño web y desarrollo en internet online

Consulta marcador as3 XMl

Citar            
MensajeEscrito el 23 Ago 2010 11:58 am
¡Buenas!

Lo primero de todo, agradecer a todos la creación de esta página. Es mi web de referencia y, aunque no escribo, leo un montón todo lo que ponéis y debo a está página mucho de los que sé de Flash, Air, etc.

Actualmente, estoy elaborando un marcador deportivo en AS3 leyendo los datos de un XML. En este, se realiza un filtrado previo para hacer un listado de los partidos que se van a presentar en el marcador, y ahí viene el problema:

Código ActionScript :

function menu (element:*, index:Number, arrPar:Array):void {
               
            
            for(var i:Number = 0; i< largop; i++) {
               
               var partidos:MovieClip;
               var texto:TextField;
               
               var etiPar:String;
               etiPar = selePar.sportec.partido[i].id;
               
               var pruebax:String;
               pruebax = selePar.sportec.partido[i].url;
               
               trace(element.id);
                  
               partidos = new partidos_btn();
               partidos.x=0 +(65*i);
               partidos.y=0;
               partidos.texto.htmlText = "<font color = \'#FFFFFF\' size = \'12\' family = \'Verdana\'>" +  etiPar +  "</font>";
               
               
               partidos.addEventListener(MouseEvent.MOUSE_DOWN, elePar)
               function elePar(event:MouseEvent):void{
                  
                  /*var urlPar:String;
                  urlPar = pruebax;*/
                  espeRSS(pruebax);
            
               }
               
               addChild(partidos);
               
               partidos.buttonMode = true;
               partidos.useHandCursor = true;
               partidos.mouseChildren = false;
      
            }
         
         }// end function


La cuestión es que crea bien los clips, en la posición que deseo y también las asigna bien las etiquetas (por ejemplo, España-Italia, Francia-EEUU,etc.). El problema viene que al leer la URL en la función MOUSE_DOWN siempre se queda con la del último elemento del array para todos los clips. ¿Sabéis qué estoy haciendo mal?

¡Un saludo y muchas gracias!

Por Raskh

1 de clabLevel



 

firefox
Citar            
MensajeEscrito el 23 Ago 2010 02:13 pm
Agrega esto (deberás agregar la propiedad a la clase partidos_btn)

partidos.pruebax = selePar.sportec.partido[i].url;

Luego cambia el handler:

Código ActionScript :

 function elePar(event:MouseEvent):void{ 
            espeRSS(evt.target.pruebax);              
} 


la variable pruebax se sobreescribe cada vez en el loop, tiene que ser copiada a la instancia

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 30 Ago 2010 12:05 pm
¡buenas!

Ya lo he conseguido. Me estaba dando fallos no sé muy bien por qué, pero ya funciona a la perfección con la solución que me diste.

Muchas gracias, Jorge, ¡eres el mejor!

Por Raskh

1 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.