L'idea di scrivere questo articolo mi è venuta dopo le molte richieste
d'aiuto che ci sono state su questo argomento nel forum di MMkit, parecchie delle
quali riguardavano la necessità di avere un preload per i filmati esterni.
L'obiettivo è stato creare un unico preload che potesse essere utilizzato
per caricare tutti gli swf esterni voluti, a prescindere dalla destinazione
degli stessi, e quindi dei loro percorsi all'interno del filmato principale.
Obiettivo che ho raggiunto costruendo un preload a se stante e caricandolo sul
primo fotogramma del filmato richiamato dal sito.
Tutti i filmati di cui abbiamo bisogno avranno sul primo frame uno stop, una
movie vuota per il caricamento del preload e caso mai la grafica di base (per
non lasciare il "foglio" bianco!). Dal secondo fotogramma siete liberi
di metterci quello che volete.
Quindi, nel primo fotogramma di ogni filmato una movieclip di nome istanza
"vuoto" posizionata come credete e nelle azioni del fotogramma il
codice
vuoto.loadMovie("preload.swf")
stop();
il preload caricato controllerà quando quel filmato è del tutto
caricato e quindi lo farà partire mandando la testina al secondo frame.
il preload lo strutturiamo su due fotogrammi, sul primo c'è il controllo
dei kb, il secondo rimanda al primo fotogramma per aggiornare i valori
sul primo fotogramma:
/*
Definisco le variabili "bytes caricati" e "bytes totali"
della movie che ospita il preload
*/
var caricando =
_parent.getBytesLoaded()
var totali = _parent.getBytesTotal()
/*
Quando questi due valori sono uguali il filmato che ospita il preload
parte (va al frame 2)
*/
if (caricando == totali) {
_parent.gotoAndPlay(2);
}
secondo fotogramma:
gotoAndPlay(1)
la "genialata" di tutto questo è che, avendo utilizzato _parent.getBytesLoaded()
e _parent.getBytesTotal() il
calcolo dei byte all'interno del preload sarà relativo ad un livello
superiore, cioè della movie che ospita il preload, sia questa
il filmato principale che degli swf che vado a caricare successivamente.
Nel file da scaricare trovate,come esempio, un mini-sito che carica due foto.
Sia il filmato principale(l'interfaccia) che le due foto (swf esterni) utilizzano
lo stesso preload.
Il preload è semplice ed essenziale, una barra che si ingrandisce e
la percentuale numerica.
Il codice è commentato e credo abbastanza intelleggibile, ho provato
a fare le cose + semblici possibile.
qui trovate una versione on line dell'esempio
Bhe, spero vi piaccia!!