- Quiero crear un selector dinamico de opciones en flash, el cual, al pulsar una de las opciones, me ponga todas las caracteristicas en una especie de cartel situado en la parte inferior.
En plan extracutre sería algo tal que así:
OBJETO A OBJETO B OBJETO C OBJETO D
______________________________________________________________
DATO1
DATO2
DATO3
DATO4
______________________________________________________________
El caso es que todo esto se genera a partir de un doc XML el cual crea hijos con este formato:
<packs>
<pack nombre="basico" descripcion="# Pack pensado para el lanzamiento de un nuevo producto o evento" caracteristicas="# Portada # Hasta 4 secciones # Formulario de contacto # Hasta 8 fotografías por sección # Sin limite de texto " precio="250" mantenimiento="10"/>
</packs>
Bueno, pues yo en mi script he logrado generar con un objeto tipo XML dentro de un bucle for, cada OBJETO seleccionable, pero aqui tengo el problema, ya que cuando haga click en uno de ellos quiero enviarle los valores al objeto que muestra datos y siempre me da mal resultado:
_root["objeto"+i].onPress=function(){
_root["muestraDatos"].dato1=objetoXML.firstChild.childNodes[i].dato1;
}
Siempre me coje para la i en el onPress el valor 4. He de decir que en realidad son 4 los OBJETOS que se crean porque en mi codigo tengo 4 hijos en el XML, pero en cada iteración me debería de poner el valor que tiene i en ese momento, y sin embargo me pilla siempre el valor 4.
Este es mi codigo original:
var opcionesXML:XML = new XML();
opcionesXML.ignoreWhite = true;
opcionesXML.onLoad = function (sucess:Boolean) {
if (sucess) {
var opciones:Array = this.firstChild.childNodes;
for(i = 0; i < opciones.length; i++) {
_root.attachMovie("paquete", "pack"+i, _root.getNextHighestDepth());
_root["pack"+i]._x =(i * 125);
_root["pack"+i]._y = 5;
var letras:String = opciones[i].attributes.nombre;
var letrasArray:Array = letras.split("");
_root["pack"+i].naranja=letrasArray[0].toUpperCase();
_root["pack"+i].blanca=letrasArray[1];
_root["pack"+i].estampa=letras;
//Todo eso era para rellenar el formato de los objetos, aqui empieza el tema:
_root["pack"+i].onRollOver= function(){
this.gotoAndPlay(27);
}
_root["pack"+i].onRollOut= function(){
this.gotoAndPlay(42);
}
//El onRollOver y el onRollOut los hace guay, pero este es el que no rula:
_root["pack"+i].onPress=function(){
_root["cartel"].descripcion=opciones[i].attributes.descripcion;
}
}
}
else {
trace("Error al Leer archivo XML");
}
}
opcionesXML.load("xml_gen.php");
Por si cabe alguna duda, en el escenario ya tengo el movieclip cartel con sus propiedades y todo marcadas.
Perdonen por el tostonazo y gracias de antemano !!!!