En más de una ocasión hemos necesitado de las precargas (mal necesario), y muchas veces tenemos que cargar más de una SWF o JPG externamente y bueno.
No es óptimo poner el preload en el swf externo, así que aquí les dejo un preload reutilizable para cualquier momento. La idea la surge a partir de leer tutorial de Freddie® así que recomiendo darle un vistazo para tener las cosas claras desde un inicio.
var vacio: MovieClip = this . createEmptyMovieClip ("vacio", 1);
vacio. _x = 80;
var loop: MovieClip = this . createEmptyMovieClip ("loop", 0);
var vacio: MovieClip ;
linea. _xscale = 0;
reloj. _alpha =0
//--------------------------------> mi funcion precarga
function cargador(foto) {
vacio. loadMovie (foto);
reloj. _alpha =100
loop. onEnterFrame = function () {
total = vacio. getBytesTotal ();
cargados = vacio. getBytesLoaded ();
t = Math . floor ((cargados*100)/total);
campo. text = t;
linea. _xscale = t;
reloj. gotoAndStop (t);
if (t>=100) {
delete loop. onEnterFrame ;
campo. text = "";
linea. _xscale = 0;
reloj. _alpha =0;
}
};
}
//---------------------------------> botones que llaman la función
b1. onPress = function () {
cargador("foto1.jpg");
};
b2. onPress = function () {
cargador("foto2.jpg");
};
b3. onPress = function () {
cargador("foto3.jpg");
};
Bien, ahora les explicare un poco, si leyeron el tutorial de Freddie® verán que es CASI similar, los cambios son sencillo, sólo en vez de usar _root uso un MC (movieclip) para cargar dentro los jpg o swf externos que queramos. Cómo así? bueno con una función llamada cargador, que recibe de parámetro el nombre de lo que vamos a cargar.
Además, aquí estoy utlizando onEnterFrame y un if para detener el onEnterFrame.
Después lo que debemos hacer, es llamar desde nuestro botón a nuestra función y pasarle el nombre del archivo que deseamos precargar.
b1. onPress = function () {
cargador( "foto1.jpg" );
};
Eso es todo, en este caso use _xscale para hacer mi barrita preload, o usar el reloj para una animación mas personalizada.
Espero les sirva, aquí les dejo el zip y para ver el ejemplo aqui .