Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Code de um vídeo tutorial para fazer uma transição simples com preloader para arquivo externo.
Um movie clip com o efeito (mc_Carrega), frame 1 > alpha 0, frame 10 > preloader e alpha 70, frame 20 alpha 0. Em uma layer abaixo o movie clip container.
Action no mc_Carrega:
stop();
var carrega:Loader = new Loader();
carrega.load(MovieClip(root).link);
carrega.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, carregando);
carrega.contentLoaderInfo.addEventListener(Event.COMPLETE, completo);
function carregando(evt:ProgressEvent):void {
var perc:Number = evt.bytesLoaded/evt.bytesTotal;
barra.scaleX = perc;
percentual.text = Math.floor(perc*100) + "%";
}
function completo(evt:Event):void {
MovieClip(root).container.removeChildAt(0);
MovieClip(root).container.addChild(carrega);
play();
}
Alguma outra opção para substituir o 'MovieClip(root)' no code?
Não aprendi transições de página no curso básico de AS3, nem ouvi falar de root, é o primeiro contato com esse termo bem conhecido no AS2 e em algumas "gambis" no AS3 (mesmo sem saber usar, já vi comentários).
Sim, eu li o Help da Adobe para AS3 sobre o root (ainda em grande parte inteligíveis para quem está começando, mesmo em pt_BR).
A dúvida específica é sobre estas linhas:
MovieClip(root).container.removeChildAt(0);
MovieClip(root).container.addChild(carrega);
Serve unicamente para informar que o arquivo anterior foi removido e um novo adicionado ao stage?
Alguma outra opção de sintaxe? Possibilidades de transição com preloader sem usar timeline?
Carregando comentários...