Preloader in Actionscript 3
Gisteren vroeg iemand me hoe preloaders in AS3 werken. Door een ongelukkig toeval heb ik ooit vernomen van iemand dat het ‘self-preloaden’ zoals we dat kennen uit Actionscript 2 niet meer zou kunnen met Actionscript 3. Ik heb dan ook nog maar 2 of 3 projecten online gezet in Actionscript 3, waar ik gewoon gebruik maakte van een preload.swf die de applicatie.swf inlaadde.
Dom van me dat ik dat blindelings geloofde, want toen mij die vraag gisteren gesteld werd, wou ik het toch wel zeker weten. Ik opende Flash, knalde een wallpaper van theFWA in frame 2 (zodat ik zeker weet dat er wat is om te preloaden), ging naar frame 1, en drukte op F1.
Na even zoeken werd het duidelijk.
De _root.bytesLoaded en _root.bytesTotal uit Actionscript 2 zijn wel degelijk weg, maar daarvoor niet ‘weggelaten’: Ze zijn verhuisd naar hun nieuwe (en meer logische thuis): this.loaderInfo.bytesTotal en this.loaderInfo.bytesLoaded.
Verder blijft de logica die je hanteert redelijk dezelfde.
Ik heb mijn .fla hier geplaatst voor de mensen die het eens volledig willen bekijken.
Ik vind de Actionscript 3 benadering van preloaden wel veel leuker, en makkelijker.























nice, ik kwam er zelf ook niet helemaal uit hoe het zat.
de import flash.events.*; is wel wat overdreven vind je niet?
als je de class die importeert defineert zoals hij is. dus bijv.
flash import.events.mouseEvents;
flash import.events.events;
dan ben je veel minder tijd kwijt met publishen is zeker handig met grote projecten.. waarschijnlijk wist je dit al.
in elk geval bedankt!
Jup, je hebt volledig gelijk. De * imports zijn altijd al een slechte gewoonte van me geweest.
Hi all,
De compiler compiled alleen welke classes er gebruikt worden, dus die ster is geen slechte gewoonte. Mochten er bij die import, files zitten die niet aangeroepen / gebruikt worden dan worden die ook niet mee gecompiled
Groet Sid