Efectos de transición en Flash MX 2004: TransitionManager class

Como llevo varios días sin escribir y dado que por la falta de tiempo que tengo ultimamente esto se puede alargar, aquí dejo un ejemplillo minimal que utiliza la clase TransitionManager, la cual creo que está pasando bastante desapercibida y me parece de una utilidad increible. El ejemplo siguiente es muy sencillo, de manera que puedas empezar viendo de una manera rápida lo que puede hacer dicha clase y sus asociadas.

Para ver el ejemplo haz lo siguiente:

  1. Crea un MovieClip en un documento nuevo en el primer frame. Escribe “Circle” como nombre, identificador y clase AS2.0. Dibuja dentro lo que quieras…aunque convendría que fuese un circulo… 😉
  2. Ahora crea la clase Circle en donde guardes el recien creado fla, con el código que aparece al final del post:
  3. Por último ejecuta el ejemplo, y deberás ver como el MovieClip desaparece de una manera muy “pixelada”.

Una vez vista esta transición puedes experimentar con otras muchas que encontrarás en el directorio mx/transitions. Como comprobarás las posibilidades de estas clases son muchas y muy interesantes, espero poder sacar otro ratillo(>sigh<!)para contar algo más sobre ellas.

import mx.transitions.TransitionManager;

class Circle extends MovieClip {
        private var tm:TransitionManager;
        
        function Circle() {
                doTransition(mx.transitions.PixelDissolve, 0, 1, mx.transitions.easing.Regular.easeOut);
        }
        
        public function doTransition(_type, _direction, _duration, _easing) {
                var transObject:Object = new Object();
                
                transObject.type = _type;
                transObject.direction = _direction;
                transObject.duration = _duration;
                transObject.easing = _easing;
                
                tm = new TransitionManager(this);
                tm.addEventListener("allTransitionsOutDone", this);
                tm.addEventListener("allTransitionsInDone", this);
                tm.startTransition(transObject);
        }
        
        private function allTransitionsInDone(evt):Void {
                trace(evt.type + " triggered");
        }
        
        private function allTransitionsOutDone(evt):Void {
                trace(evt.type + " triggered");
        }
}

3 Comentarios

  1. quisiera saber como creo la clase… O si no me puedes explicar mejor ese tutorial. Muchas gracias

  2. estaba probando la classe pero como soy nuevo en esto no puedo hacerla funcionar creo la clase y la guaro luego en le archivo flag adonde la agrego para que se ejecute gracias

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *