ActionScript - Precarga MovieClipLoader

 
Vista:

Precarga MovieClipLoader

Publicado por Shimaryu (1 intervención) el 27/03/2008 21:50:23
Hola que tal, tengo un problema con una precarga de multiples archivos .jpg de uan galeria, aca esta el código:

Dir = "img/4/";
sep = 2;
filas = 1;
columnas = 65;
escala = 18.78;
xIni = 0;
yIni = 0;
n = 0;
var precarga_mcl:MovieClipLoader = new MovieClipLoader();
var listener:Object = new Object();
Stage.showMenu = false;
listener.onLoadStart = function(target_jpg) {
_root.attachMovie("barra_mc", "barra", _root.getNextHighestDepth());
_root.barra._y = 301.9;
_root.barra._x = -192.4;
};
listener.onLoadProgress = function(target_jpg, loadedBytes, totalBytes) {
var porcentaje:Number;
porcentaje = Math.round((loadedBytes*100)/totalBytes);
_root.barra.gotoAndStop(porcentaje);
target_mc._visible = false;
target_mc.stop();
};
listener.onLoadComplete = function(target_jpg) {
_root.barra.removeMovieClip();
target_mc._visible = true;
target_mc.play();
};
precarga_mcl.addListener(listener);
for (var f = 0; f<filas; f++) {
for (var c = 0; c<columnas; c++) {
n++;
fotos = attachMovie("id_foto", "foto"+n, n);
fotos.createEmptyMovieClip("nuevo", 20);
fotos._xscale = escala;
fotos._yscale = escala;
fotos._x = (sep+fotos._width)*c+xIni;
fotos._y = (sep+fotos._height)*f+yIni;
precarga_mcl.loadClip(Dir+n+".jpg", fotos.nuevo);
fotos.n = n;
fotos.onPress = function() {
loadMovieNum("flashazo.swf", 50);
_root.foto_mc.loadMovie(Dir+this.n+".jpg");
};
}
}

Parece funcionar todo bien, pero las imagenes no me las muestra en el menu pero si aparece cuando las cliqueo (aunque no se vean en el menu, estan) y aparte no hace lo que mas necesito que es la precarga, es como si se lo saltara, pone la barra al 100% y se queda un buen rato hasta q carga todas las imagenes, si alguien tienen idea de q esta pasando, por favor una ayuda... GRACIAS!

Saludos.-
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Problema con la precarga de imágenes en una galería

Publicado por Alejandro (369 intervenciones) el 23/06/2023 23:19:26
El código que has compartido parece tener un problema con la precarga de las imágenes en tu galería. A primera vista, identifico un error en la línea donde creas el objeto `fotos`:

1
fotos = attachMovie("id_foto", "foto"+n, n);

En lugar de utilizar `attachMovie`, que está destinado a ser utilizado en el nivel de la biblioteca del proyecto, deberías crear un nuevo `MovieClip` utilizando la sintaxis `createEmptyMovieClip`. Así que debes reemplazar esa línea por:

1
fotos = createEmptyMovieClip("foto"+n, n);

Además, parece que el código para la precarga de las imágenes no se está ejecutando correctamente. Esto podría deberse a que la variable `target_mc` no está correctamente definida. Sugiero que modifiques las líneas relacionadas con la precarga de la siguiente manera:

1
2
3
4
5
6
7
8
9
10
11
12
13
listener.onLoadProgress = function(target_jpg, loadedBytes, totalBytes) {
    var porcentaje:Number;
    porcentaje = Math.round((loadedBytes*100)/totalBytes);
    _root.barra.gotoAndStop(porcentaje);
    target_jpg.nuevo._visible = false;
    target_jpg.nuevo.stop();
};
 
listener.onLoadComplete = function(target_jpg) {
    _root.barra.removeMovieClip();
    target_jpg.nuevo._visible = true;
    target_jpg.nuevo.play();
};

Reemplaza `target_mc` por `target_jpg.nuevo` en esas líneas.

Con respecto al problema de las imágenes que no se muestran en el menú, verifica si el clip de película "id_foto" tiene un contenido válido y se encuentra en la biblioteca del proyecto.

Espero que estas modificaciones resuelvan tus problemas con la precarga y la visualización de las imágenes en el menú. ¡Buena suerte con tu galería!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar