Preloaders con varios archivos?

  • nornholdj
  • Novice
  • Novice
  • Avatar de Usuario
  • Registrado: Mar 18, 2009
  • Mensajes: 18
  • Status: Offline

Nota Julio 24th, 2009, 7:09 am

Hola,

Tengo dos. Archivos FLA. Uno de ellos es mi preloader y el segundo es mi swf principal para el resto de la web. Mi preloader de cargas supuesto, mi swf principal, mostrando una barra que muestra el porcentaje de lo que se ha cargado. Mi main.swf a su vez, también carga algunos archivos XML para mostrar la información contenida en ellos. He intentado cargar los archivos XML dentro de la precarga y creo que las cargas, pero cuando voy a la sección de mi película principal que utiliza XML que arroja un error que dice: "No se puede acceder a una propiedad o método de una referencia de objeto nulo". Supongo thats porque intenta volver a cargar en mi película principal. Im que no sé es cómo debo hacerlo. Im también seguro de cómo puedo sumar los valores totales de los dos archivos de la barra de progreso. AS3 Im usando con CS3 y aquí está mi código.

preloader.swf
Código: [ Select ]
var websiteLoader:Loader = new Loader();
websiteLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, websiteLoading);
websiteLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, websiteLoaded);    
websiteLoader.load(new URLRequest("main.swf"));

websiteLoader.load(new URLRequest("xml/MSPInfo.xml"));

function websiteLoading(e:ProgressEvent):void
{
    var loaded:Number = e.bytesLoaded / e.bytesTotal;
    pLoaded.text = Math.ceil(loaded * 100) + " % Loaded";
    preloader.SetProgress(loaded);
    //trace(e.bytesLoaded + "/" + e.bytesTotal);
}

function websiteLoaded(e:Event):void
{
    removeChild(pLoaded);
    removeChild(longLogo);
    removeChild(preloader);
    //removeChildAt(0);
    pLoaded = null;
    
    preloader.visible = false;
    preloader = null;
    addChild(websiteLoader);
}
  1. var websiteLoader:Loader = new Loader();
  2. websiteLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, websiteLoading);
  3. websiteLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, websiteLoaded);    
  4. websiteLoader.load(new URLRequest("main.swf"));
  5. websiteLoader.load(new URLRequest("xml/MSPInfo.xml"));
  6. function websiteLoading(e:ProgressEvent):void
  7. {
  8.     var loaded:Number = e.bytesLoaded / e.bytesTotal;
  9.     pLoaded.text = Math.ceil(loaded * 100) + " % Loaded";
  10.     preloader.SetProgress(loaded);
  11.     //trace(e.bytesLoaded + "/" + e.bytesTotal);
  12. }
  13. function websiteLoaded(e:Event):void
  14. {
  15.     removeChild(pLoaded);
  16.     removeChild(longLogo);
  17.     removeChild(preloader);
  18.     //removeChildAt(0);
  19.     pLoaded = null;
  20.     
  21.     preloader.visible = false;
  22.     preloader = null;
  23.     addChild(websiteLoader);
  24. }

Main.swf
Código: [ Select ]
//setup loading for xml page with MSP data
var MSPLoader:URLLoader = new URLLoader();
var MSPRequest:URLRequest = new URLRequest("xml/MSPInfo.xml");
MSPLoader.load(MSPRequest);
MSPLoader.addEventListener(Event.COMPLETE, loadData);
var MSPDoc:XML;
  1. //setup loading for xml page with MSP data
  2. var MSPLoader:URLLoader = new URLLoader();
  3. var MSPRequest:URLRequest = new URLRequest("xml/MSPInfo.xml");
  4. MSPLoader.load(MSPRequest);
  5. MSPLoader.addEventListener(Event.COMPLETE, loadData);
  6. var MSPDoc:XML;


Gracias,

-Jordania
  • Anonymous
  • Bot
  • No Avatar
  • Registrado: 25 Feb 2008
  • Mensajes: ?
  • Loc: Ozzuland
  • Status: Online

Nota Julio 24th, 2009, 7:09 am

  • graphixboy
  • Control + Z
  • Mastermind
  • Avatar de Usuario
  • Registrado: Jul 11, 2005
  • Mensajes: 1828
  • Loc: In the Great White North
  • Status: Offline

Nota Julio 24th, 2009, 10:10 am

Código: [ Select ]
websiteLoader.load(new URLRequest("main.swf"));

websiteLoader.load(new URLRequest("xml/MSPInfo.xml"));
  1. websiteLoader.load(new URLRequest("main.swf"));
  2. websiteLoader.load(new URLRequest("xml/MSPInfo.xml"));


estas dos líneas están peleando porque su objeto usando el mismo cargador para ambos al mismo tiempo. Por lo que técnicamente su reemplazar el comando de carga de un milisegundo después de llamar a la primera vez.

Quiero esperar a llamar al archivo XML hasta la otra llamada ha terminado bien en la devolución de llamada para el gestor tiene o por medio de un objeto cargador completamente nuevo, si usted necesita el código XML en el mismo tiempo que la carga de la película principal.
If at first you don't succeed F1... If that doesn't work try Google!
//// Designer, Developer & Teacher - Interactive, Motion and 3D \\\\
Portfolio at WhenImNotSleeping.com

Publicar Información

  • Total de mensajes en este tema: 2 mensajes
  • Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 110 invitados
  • No puede abrir nuevos temas en este Foro
  • No puede responder a temas en este Foro
  • No puede editar sus mensajes en este Foro
  • No puede borrar sus mensajes en este Foro
  • No puede enviar adjuntos en este Foro
 
 

© 2011 Unmelted, LLC. Ozzu® es una marca registrada de Unmelted, LLC