estoy con el Flash poniendo 2 fotogramas (1 y 2), y en cada fotograma hay un botón (boton1 y boton2, respectivamente). El botón 1 me lleva al fotograma 2, y el boton 2 me lleva al fotograma 1, gracias a este código:
Código:
Hay un código igual en el fotograma 2, cambiando los valores del botón, la funcion y el fotograma claro.stop(); import flash.events.MouseEvent; boton1.addEventListener(MouseEvent.CLICK, pulsa1); function pulsa1(event:MouseEvent):void{ gotoAndPlay(2); }
Código:
La duda es: en el fotograma 2, ademas he puesto el código de una galería de archivos externa. No creo que sea relevante este codigo pero lo pongo:stop(); import flash.events.MouseEvent; boton2.addEventListener(MouseEvent.CLICK, pulsa2); function pulsa2(event:MouseEvent):void{ gotoAndPlay(1); }
Código:
import flash.net.URLLoader; import flash.net.URLRequest; import flash.events.Event; import flash.display.MovieClip; import flash.display.Loader; import fl.controls.ProgressBar; import fl.transitions.Tween; import fl.transitions.easing.*; import fl.transitions.TweenEvent; var columnas:Number; var mi_x:Number; var mi_y:Number; var thumb_width:Number; var thumb_height:Number; var mis_imagenes:XMLList; var total:Number; var container_mc:MovieClip; var preloaders_mc:MovieClip; var img_mc:MovieClip; var x_contador:Number = 0; var y_contador:Number = 0; var cargadorXML:URLLoader = new URLLoader(); cargadorXML.load (new URLRequest ("galeria1.xml")); cargadorXML.addEventListener(Event.COMPLETE, procesarXML); function procesarXML(e:Event):void{ var miXML:XML = new XML(e.target.data); columnas = miXML.@COLUMNS; mi_x = miXML.@XPOSITION; mi_y = miXML.@YPOSITION; thumb_width = miXML.@WIDTH; thumb_height = miXML.@HEIGHT; mis_imagenes = miXML.IMAGE; total = mis_imagenes.length(); crearContainer(); cargarThumbs(); } function crearContainer():void { container_mc = new MovieClip(); container_mc.x = mi_x; container_mc.y = mi_y; addChild (container_mc); container_mc.addEventListener (MouseEvent.CLICK, cargarImgGrande); container_mc.buttonMode = true; preloaders_mc = new MovieClip(); preloaders_mc.x = container_mc.x; preloaders_mc.y = container_mc.y; addChild(preloaders_mc); } function cargarThumbs ():void { for (var i:Number = 0; i < total; i++){ var thumb_url = mis_imagenes[i].@THUMB; var thumb_loader = new Loader(); thumb_loader.load (new URLRequest(thumb_url)); thumb_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, thumbCargado); thumb_loader.name = i; thumb_loader.x = (thumb_width + 10) * x_contador; thumb_loader.y = (thumb_height + 10) * y_contador; if(x_contador+1 < columnas){ x_contador++; }else { x_contador = 0; y_contador++; } var preloader_pb:ProgressBar = new ProgressBar(); preloader_pb.source = thumb_loader.contentLoaderInfo; preloader_pb.x = thumb_loader.x; preloader_pb.y = thumb_loader.y; preloader_pb.width = thumb_width; preloader_pb.height = thumb_height; preloaders_mc.addChild(preloader_pb); preloader_pb.addEventListener(Event.COMPLETE, progressBarCargada); } } function thumbCargado (e:Event):void { var mi_thumb:Loader = Loader(e.target.loader);//revisar sintaxis new loader container_mc.addChild(mi_thumb); new Tween(mi_thumb, "alpha", Strong.easeIn, 0,1,0.5, true); } function cargarImgGrande(e:MouseEvent):void{ var img_loader:Loader = new Loader (); var img_url = mis_imagenes[e.target.name].@FULL; img_loader.load(new URLRequest(img_url)); img_loader.contentLoaderInfo.addEventListener(Event.INIT, imgGrandeCargada); var img_pb:ProgressBar= new ProgressBar(); img_pb.source = img_loader.contentLoaderInfo; img_pb.x= (stage.stageWidth - img_pb.width )/2; img_pb.y= (stage.stageHeight - img_pb.height )/2; preloaders_mc.addChild(img_pb); img_pb.addEventListener(Event.COMPLETE, progressBarCargada); container_mc.removeEventListener (MouseEvent.CLICK, cargarImgGrande); container_mc.buttonMode = false; new Tween(container_mc,"alpha", Strong.easeIn, 1,0.5,0.5,true); } function imgGrandeCargada (e:Event):void{ img_mc = new MovieClip(); img_mc.buttonMode = true; addChild (img_mc); var mi_loader:Loader = Loader(e.target.loader); img_mc.addChild(mi_loader); new Tween (mi_loader, "alpha", Strong.easeIn, 0, 1, 0.5, true); mi_loader.x = (stage.stageWidth - mi_loader.width )/2; mi_loader.y = (stage.stageHeight - mi_loader.height )/2; mi_loader.addEventListener(MouseEvent.CLICK, ocultarImgGrande); } function ocultarImgGrande (e:MouseEvent):void{ var mi_loader:Loader = Loader(e.currentTarget); var fade_out:Tween = new Tween (mi_loader, "alpha", Strong.easeOut, 1,0,0.2, true); fade_out.addEventListener(TweenEvent.MOTION_FINISH, tweenFinalizado); /*mi_loader.unload (); removeChild(mi_loader); */ container_mc.addEventListener(MouseEvent.CLICK, cargarImgGrande ); new Tween(container_mc, "alpha", Strong.easeOut, 0.5,1,0.5, true); } function progressBarCargada (e:Event):void{ var thumbs_pb:ProgressBar = ProgressBar (e.target); preloaders_mc.removeChild (thumbs_pb); thumbs_pb.removeEventListener(Event.COMPLETE, progressBarCargada); } function tweenFinalizado (e:TweenEvent):void{ var mi_loader:Loader = Loader (e.target.obj); mi_loader.unload(); img_mc.removeChild(mi_loader); removeChild(img_mc); img_mc = null; /*removeChild(mi_loader);*/ container_mc.addEventListener(MouseEvent.CLICK, cargarImgGrande); container_mc.buttonMode = true; }
Pero resulta que al pulsar el boton2 y volver al fotograma 1, la galería sigue estando ahí!!! Y no quiero que exista esa galeria al volver atras (fotograma 1).
Alguien sabe si puedo solucionarlo y como??
Espero haberme explicado bien.
Soy muy novato con el actionscript 3!
Ayuda! Gracias