Comunidad de diseño web y desarrollo en internet online

XML con un array......

Citar            
MensajeEscrito el 14 Sep 2009 10:40 pm
Hola!

Amigos del clab, me he encontrado con un problema en el que me encuentro estancado U_U ,
lo que pasa es que quiero hacer un portafolio para mi pag con todos lo trabajos que he hecho cargándose de manera dinámica con as2 (suena fácil no?), ya he logrado casi todo el scroll bar, la carga de todas las iomagenes, pero el txto....el texto... solo carga el primero, aca esta el xml:

Código XML :

<slideshow>
<photo url="lost1.jpg" titu="Grupotrazos" desc="Sayid tries to explain to electronics theory to Kate." urldir="Grupotrazos"/>
<photo url="lost2.jpg" titu="Grupotrazos" desc="Locke tries again to explain to Jack why he's not crazy." urldir="Grupotrazos"/>
<photo url="lost3.jpg" titu="Grupotrazos" desc="Its confirmed, Jack's dad is dead as a doornail." urldir="Grupotrazos"/>
<photo url="lost4.jpg" titu="Grupotrazos" desc="Boone getting saved, but it won't do him any good." urldir="Grupotrazos"/>
<photo url="lost5.jpg" titu="Grupotrazos" desc="Jack and Hurley saving Claire from the wreckage." urldir="Grupotrazos"/>
</slideshow>

aca el as:

Código ActionScript :

var xm:XML = new XML();
xm.ignoreWhite = true;
var spacer:Number = 400;
var urls:Array = new Array();
var titu:Array = new Array();
var desc:Array = new Array();
var url:Array = new Array();
xm.onLoad = function(success) {
   var photos:Array = this.firstChild.childNodes;
   for(i=0;i<photos.length;i++) {
      urls.push(photos[i].attributes.url);
      var newY:Number = i * (holder._height + spacer);
      holder.duplicateMovieClip("holder" +i, i, {_y:newY});
      loadMovie(urls[i], "holder"+i);
   }
   for(a=0;a<photos.length;a++) {
      titu.push(photos[a].attributes.titu);
      desc.push(photos[a].attributes.desc);
      url.push(photos[a].attributes.urldir);
      var newYY:Number = a * (tc._height + spacer);
      tc.duplicateMovieClip("tc" +a, a, {_y:newYY});
      tc.titu.text = titu[a];
      tc.desc.text = desc[a];
      tc.urldir.text = url[a];
   }
   
}

xm.load("lost.xml");

todo funciona muy bien hasta esta linea:

Código ActionScript :

tc.duplicateMovieClip("tc" +a, a, {_y:newYY});
//es el pedazo de la segunda a dentro del duplicate, ayuda!!

ya hice pruebas y solo quitando esa linea funciona...porque...no se, pero les agradecería de todo corazón que me ayudarn :crap:

Acá dejo todos los archivos:
http://www.sforero.net/cristalab/ayudaclab.rar
o si prefieren todo separado:
http://www.sforero.net/cristalab/ayudaclab/index.fla
http://www.sforero.net/cristalab/ayudaclab/index.swf
http://www.sforero.net/cristalab/ayudaclab/lost.xml
----------------------------------
Saludos,
Santiago Forero Molano

Por sforero

478 de clabLevel

1 tutorial

 

social media expert world

chrome
Citar            
MensajeEscrito el 16 Sep 2009 01:47 am
por favor ayúdenme....estoy estancado U_U

Por sforero

478 de clabLevel

1 tutorial

 

social media expert world

chrome
Citar            
MensajeEscrito el 16 Sep 2009 06:43 am
Hola,
el problema está en que en todo lo que está dentro de la función xm.onLoad, this hace referencia a xm, no al clip conteudo. Por eso en lugar de poner:
tc.duplicateMovieClip("tc" +a, a, {_y:newYY});
tienes que poner:
conteudo.tc.duplicateMovieClip("tc" +a, a, {_y:newYY});

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 16 Sep 2009 12:49 pm
Men lo voy a probar si sirve, te deberé la vida U_U

Por sforero

478 de clabLevel

1 tutorial

 

social media expert world

msie7
Citar            
MensajeEscrito el 16 Sep 2009 08:59 pm
nop
no funciona.....

Pero igual muchísimas gracias por ayudarme..

Por sforero

478 de clabLevel

1 tutorial

 

social media expert world

chrome
Citar            
MensajeEscrito el 16 Sep 2009 11:58 pm
Hola, me parece que tu problema se encuentra en los niveles, prueba a si:

Código ActionScript :

tc.duplicateMovieClip("tc" +a, tc.getNextHighestDepth(), {_y:newYY});

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 17 Sep 2009 12:09 am

LongeVie escribió:

Hola, me parece que tu problema se encuentra en los niveles, prueba a si:

Código ActionScript :

tc.duplicateMovieClip("tc" +a, tc.getNextHighestDepth(), {_y:newYY});


:) Gracias men por acudir a ayudarme...
pero ese no es el problema, la verdad este problema me tiene loco...enserio le he estado trabajando mucho y se refleja en mi grafica del clab....cuando lo arregle prometo hacer 4 tips o tutoriales (de los cuales ya tengo el texto), con este contenido. Gracias y porfavor ayudenme :cry:

Por sforero

478 de clabLevel

1 tutorial

 

social media expert world

chrome
Citar            
MensajeEscrito el 17 Sep 2009 12:12 am
pues que raro que hagas 2 for cuando con unos seria suficiente, y tambien me parece raro que dos clips puedan ocupar el mismo nivel de profundidad.

Seria bueno si pudieras describir mas tu problema.

OJO. no tengo flash instalado en esta pc.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

firefox
Citar            
MensajeEscrito el 17 Sep 2009 12:41 am
si eso es un error no lo debí hacer el for 2 lo puse para probar si ese era el fallo (si lo ven estoy desesperado), haré un informe para buscar el fallo y ya están los archivos actualizados (last version up )
con respecto a lo de subir y pedir que revisen y traten de arreglar los archivos...lo se tienen toda la razon pero esta vez quiero que tengan a la mano esto para que se facilite la ayuda gracias

Acá dejo todos los archivos:
http://www.sforero.net/cristalab/ayudaclab.rar
o si prefieren todo separado:
http://www.sforero.net/cristalab/ayudaclab/index.fla
http://www.sforero.net/cristalab/ayudaclab/index.swf
http://www.sforero.net/cristalab/ayudaclab/lost.xml

Por sforero

478 de clabLevel

1 tutorial

 

social media expert world

chrome
Citar            
MensajeEscrito el 17 Sep 2009 07:46 am
Hola,
creo que LongeVie tiene razón, y el problema está en las profundidades (probando con "100 + i" funciona), y además para asignar el texto a las copias de tc creo que deberías guardar esa copia en un clip auxiliar. Una cosa que me ha extrañado es el cálculo de newYY (¿no sería newY, para que queden a la altura de las imágenes?)

Código ActionScript :

//tc.duplicateMovieClip("tc" +i, tc.getNextHighestDepth(), {_y:newYY});
//Quizá sea newY en lugar de newYY??
var dupTc:MovieClip = tc.duplicateMovieClip("tc" +i, 100 + i, {_y:newY});
titu.push(photos[i].attributes.titu);
desc.push(photos[i].attributes.desc);
url.push(photos[i].attributes.urldir);
dupTc.titu.text = titu[i];
dupTc.descr.text = desc[i];
dupTc.urldir.text = url[i];

Por isidoro

Claber

498 de clabLevel

2 tutoriales

Genero:Masculino  

firefox
Citar            
MensajeEscrito el 17 Sep 2009 07:27 pm
Sirvió!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! SISISISISISISISIISISISISISISISISI
Gracias......Enserio no saben cuanto me han ayudado, muchísimas gracias ya mismo me pondré a realizar los tips o tutos que prometí...Gracias ;)
MUCHÍSIMAS GRACIAS!!!!!!

Por sforero

478 de clabLevel

1 tutorial

 

social media expert world

chrome

 

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