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

Cambiar de pantalla

Estas en el tema de Cambiar de pantalla en el foro de Flash y Actionscript en Foros del Web. Hola!Tengo que cambiar de pantalla (mxml) desde un actionScript file. Cómo puedo comunicar ese mismo actionScript file con elnuevo mxml? Para que se entienda mejor, ...
  #1 (permalink)  
Antiguo 27/04/2009, 05:30
 
Fecha de Ingreso: abril-2009
Mensajes: 29
Antigüedad: 15 años, 7 meses
Puntos: 0
Cambiar de pantalla

Hola!Tengo que cambiar de pantalla (mxml) desde un actionScript file.
Cómo puedo comunicar ese mismo actionScript file con elnuevo mxml?

Para que se entienda mejor, el código del actionScript file es:

private function showDataFilms(control:Object,film:Object):void{

var filmXML:XML = XML(film);

this.removeAllChildren();
this.addChildAt(new ShowFilms(), 0); //cambia de pantalla

//a partir de aqui no se cómo comunicar los datos de filmXML con ShowFilms!
}


Muchas gracias!Un saludoo
  #2 (permalink)  
Antiguo 28/04/2009, 10:06
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 11 meses
Puntos: 43
Respuesta: Cambiar de pantalla

Hola cbodeguilla !

Si quieres que ShowFilms pueda comunicarse con la instancia filmXML podrías pasarle la referencia del objeto XML al componente ShowFilms, por ejemplo:

Código actionscript:
Ver original
  1. var filmXML:XML = XML(film);
  2. var view:ShowFilms = new ShowFilms();
  3. view.setXML(filmXML);

Solamente tendrías que definir en el componente un atributo privado que sea el que tenga la referencia del objeto XML y un método público setXML para establecerla.

Un saludote !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
  #3 (permalink)  
Antiguo 28/04/2009, 12:46
 
Fecha de Ingreso: abril-2009
Mensajes: 29
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: Cambiar de pantalla

Pero en este caso ( el de tu ejempo) todas son clases ActionScript, no? Es que ShowFilms en mi caso es un mxml
  #4 (permalink)  
Antiguo 01/05/2009, 12:21
Avatar de jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 19 años, 11 meses
Puntos: 43
Respuesta: Cambiar de pantalla

Hola cbodeguilla !

Perdón por la tardanza.

Los componentes MXML se comportan como clases de software, tienen un comportamiento y un estado, esto quiere decir que puedes definir métodos y atributos.

MyCanvas.mxml

Código actionscript:
Ver original
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="400" height="300">
  3.    
  4.     <mx:Script>
  5.         <![CDATA[
  6.            
  7.             private var _value:String;
  8.            
  9.             public function set value(str:String):void
  10.             {
  11.                 _value = str;
  12.             }
  13.            
  14.             public function doSomething() {
  15.                
  16.             }
  17.            
  18.         ]]>
  19.     </mx:Script>
  20.    
  21. </mx:Canvas>

Puedes ver que he generado un componente que extiende la funcionalidad de un Canvas, y lo he especializado añadiendo un atributo y un método, puedo hacer uso de este, de la siguiente forma:

Código actionscript:
Ver original
  1. var myCanvas:MyCanvas = new MyCanvas();
  2. myCanvas.value = "Mi componente personalizado";
  3. myCanvas.doSomething();
  4. addChild(myCanvas);

Espero que esto te ayude a entender como funcionan los componentes en Flex.

Un saludote !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.
  #5 (permalink)  
Antiguo 21/05/2009, 14:36
 
Fecha de Ingreso: mayo-2009
Mensajes: 2
Antigüedad: 15 años, 6 meses
Puntos: 0
Respuesta: Cambiar de pantalla

No estoy seguro si tiene que ver con tu problema pero puedes usar "States" para cambiar de ventanas o pantallas.
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 15:59.