Foros del Web » Creando para Internet » Flash y Actionscript »

Cargar Texto en un Campo desde un XML

Estas en el tema de Cargar Texto en un Campo desde un XML en el foro de Flash y Actionscript en Foros del Web. Buenas. Ante todo gracias a quien se tome la molestia al menos de leer mi problema y más aun si conoce la solución y quiere ...
  #1 (permalink)  
Antiguo 04/02/2010, 12:50
 
Fecha de Ingreso: febrero-2010
Mensajes: 4
Antigüedad: 14 años, 3 meses
Puntos: 0
Pregunta Cargar Texto en un Campo desde un XML

Buenas.

Ante todo gracias a quien se tome la molestia al menos de leer mi problema y más aun si conoce la solución y quiere compartirla conmigo.

Pues bien, he realizado en flash una web para dar a conocer ciertas obras realizadas por nosotros y para poder dar información de las que están en venta entre otras cosas.

Consta de 2 escenas.

En la primera hay una serie de fotogramas fijos que conforman la base de la web y que se desplaza de un fotograma a otro con los botones que conforman el menú.

En la segunda escena he colocado lo que sería la ficha de cada obra, con un cuadro que desplazándose por la pantalla hasta su posición final, muestra la foto de esa obra y con otro cuadro de texto dinámico, que también desplazándose y agrandándose hasta su posición y tamaño finales, debería mostrar el texto descriptivo de esa obra.

Pero ahí está el problema, el texto no se carga en dicho campo.

Ambos campos cargan su contenido de unos xml. El de las fotos funciona perfectamente, pero el del texto no y no se porque.

Este segundo escenario se carga mediante unos botones del primer escenario que llevan este código:

Código:
on (release) {

	//Movieclip GotoAndPlay Behavior
	Valor=0
	_root.gotoAndPlay("8");
	//End Behavior

}
Cada botón lleva en “Valor” un número distinto, que identifica la obra en cuestión.

En uno de los primeros fotogramas de la escena 2, tengo este código:

Código:
stop();
XML_Galeria = new XML();
XML_Galeria.ignoreWhite = true;
XML_Galeria.load("Galeria.xml");
XML_Galeria.onLoad = function(){
	loadMovie(XML_Galeria.firstChild.childNodes[Valor].firstChild, CampoFoto);
}
XML_Text = new XML();
XML_Text.ignoreWhite = true;
XML_Text.load("Texto.xml");
XML_Text.onLoad = function(){
	CampoTex.text = XML_Text.firstChild.childNodes[Valor].firstChild.nodeValue;
}
play();
El xml de los textos:

Código:
<Textos>
  <Texto nombre="00">71 viviendas en eras de renueva</Texto>
  <Texto nombre="01">71 viviendas en eras de renueva</Texto>
  <Texto nombre="02">71 viviendas en eras de renueva</Texto>
  <Texto nombre="03">71 viviendas en eras de renueva</Texto>
</Textos>
Solo es de prueba y no lo tengo completo, ¿pero supongo que tendría que cargar igual para Valor=0 a 3 no?

El Xml de las fotos:

Código:
<Imagenes>
  <Foto nombre="00">Objetos/Imagenes/71viv 01.jpg</Foto>
  <Foto nombre="01">Objetos/Imagenes/71viv 02.jpg</Foto>
…..
…..
  <Foto nombre="60">Objetos/Imagenes/Hotel Paris 01.jpg</Foto>
  <Foto nombre="61">Objetos/Imagenes/Hotel Paris 02.jpg</Foto>
</Imagenes>
No lo pongo entero por no extender esto mucho, además ese si funciona.


He rebuscado mucho por ahí tratando de darle solución, pero la verdad es que apenas tengo idea de Flash y mucho menos de Action Script. Lo que he hecho a sido con una cierta ayuda de un conocido que me dio parte del código para cargar las fotos con el xml y a base de prueba y error. Pero con el campo de texto solo consigo error por más que pruebe.

Espero que alguien pueda encontrar el fallo y decirme de modo sencillo como repararlo.

Gracias.
  #2 (permalink)  
Antiguo 08/02/2010, 11:19
 
Fecha de Ingreso: febrero-2010
Mensajes: 4
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Cargar Texto en un Campo desde un XML

¿Nadie sabe lo que falla?

Si necesitais alguna información adicional intentaría proporcionarosla.

Gracias.
  #3 (permalink)  
Antiguo 08/02/2010, 12:23
Avatar de Diegoazul  
Fecha de Ingreso: mayo-2007
Ubicación: { Dash Berlin }
Mensajes: 1.879
Antigüedad: 17 años
Puntos: 67
Respuesta: Cargar Texto en un Campo desde un XML

Yo probe esto :
Cita:
Valor=1
XML_Text = new XML();
XML_Text.ignoreWhite = true;
XML_Text.load("textos.xml");
XML_Text.onLoad = function(){
CampoTex.text = XML_Text.firstChild.childNodes[Valor].firstChild.nodeValue;

trace(XML_Text)
}
y si funciona, me carga el xml, y tambien el campo de texto, dices que estas animando el texto, prueba con embeber la fuente mira aquí (flash f1):
Cita:

Referencia del lenguaje ActionScript 2.0


Clases de ActionScript > TextField > embedFonts (propiedad TextField.embedFonts)





embedFonts (propiedad TextField.embedFonts)
public embedFonts : Boolean

Especifica si representar utilizando contornos de fuentes incorporadas. Valor booleano que, cuando es true, representa el campo de texto empleando contornos de fuentes incorporadas. Si es false, representa el campo de texto empleando fuentes de dispositivo.

Si define embedFonts como true para un campo de texto, debe especificar una fuente para ese texto mediante la propiedad font de un objeto TextFormat aplicado al campo de texto. Si la fuente especificada no existe en la biblioteca (con el nombre de instancia de vinculación correspondiente), el texto no se mostrará.

Disponibilidad: ActionScript 1.0; Flash Player 6

Ejemplo
En este ejemplo, debe crear un campo de texto dinámico denominado my_txt y utilizar el siguiente código ActionScript para incorporar fuentes y girar el campo de texto. La referencia a my font lleva a un símbolo Font en la biblioteca, con vinculación a my font. El ejemplo asume que tiene un símbolo Font en la biblioteca llamado my font, con las propiedades de vinculación siguientes: el identificador definido como my font, y las opciones Exportar para ActionScript y Exportar en primer fotograma seleccionadas.

var my_fmt:TextFormat = new TextFormat();
my_fmt.font = "my font";

this.createTextField("my_txt", this.getNextHighestDepth(), 10, 10, 160, 120);
my_txt.wordWrap = true;
my_txt.embedFonts = true;
my_txt.text = "Hello world";
my_txt.setTextFormat(my_fmt);
my_txt._rotation = 45;


El método MovieClip.getNextHighestDepth() utilizado en este ejemplo necesita Flash Player 7 o una versión posterior. Si el archivo SWF incluye un componente de la versión 2, utilice la clase DepthManager de los componentes de la versión 2 en lugar del método MovieClip.getNextHighestDepth().
como consejo nunca trabajes con escenas trabaja con la linea de tiempo.
__________________
{ Flash }
  #4 (permalink)  
Antiguo 12/02/2010, 05:37
Avatar de julita_punch  
Fecha de Ingreso: abril-2007
Ubicación: Lima - Peru
Mensajes: 505
Antigüedad: 17 años
Puntos: 4
Respuesta: Cargar Texto en un Campo desde un XML

hola mordhok


a lo mejor esto te sirve de algo


http://grupogba.com/descargar/

suerte ¡¡¡
__________________
Julita Borda Hokama
a lo mejor esto ayuda
  #5 (permalink)  
Antiguo 22/02/2010, 12:40
 
Fecha de Ingreso: febrero-2010
Mensajes: 4
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: Cargar Texto en un Campo desde un XML

Muchas gracias por las respuestas, aunque al final resultó ser mucho mas sencillo que todo eso:

Cita:
Valor booleano que, cuando es true, representa el campo de texto empleando contornos de fuentes incorporadas
true se que significa verdadero jeje

Bueno pues la solución:

Resulta que el código está puesto en uno de los primeros fotogramas del segundo escenario y el campo donde se carga el texto aparece en el escenario en el fotograma 24 por lo que parece que el código no encontraba donde cargar el texto y el campo cuando aparecía se hacia el sueco y no quería saber nada de códigos.

Supongo que esto es obvio para vosotros los expertos, pero a mi me ha llevado dos meses averiguar el fallo... (ya dije antes que no tenía mucha idea de esto ¿verdad?) jejeje...

Gracias y un saludo.

Etiquetas: xml, campos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:39.