Ciao a tutti,

non riesco a capire come poter calcolare la percentuale di caricamento di un file XML.

Ho provato con URLStream ma gli eventi associati a Event.OPEN, ProgressEvent.PROGRESS e Event.COMPLETE pare vengano eseguiti contemporaneamente una volta che tutto il file è stato scaricato.

Nonostante la guida di actionscript dica che a differenza dell'oggetto URLLoader, URLStream rende disponibili i dati mentre è in atto lo scaricamento, l'effetto finale è identico sia che io usi URLLoader che URLStream.

ecco come faccio:

inizializzo gli oggetti:

codice:
var xmlString:URLRequest = new URLRequest(xmlUrl);
var _xmlLoader = new URLStream();
			
_xmlLoader.addEventListener(Event.OPEN,onOpen);
_xmlLoader.addEventListener(ProgressEvent.PROGRESS,onDownloading);
_xmlLoader.addEventListener(Event.COMPLETE, onComplete);
_xmlLoader.load(xmlString);
e queste sono le funzioni:

codice:
function onComplete(event:Event):void {
	trace("onComplete");
}
		
function onDownloading(event:ProgressEvent):void {
	var downloaded:uint=(event.bytesLoaded/event.bytesTotal)*100;
	trace("downloading "+downloaded);
}
		
function onOpen(event:Event):void {
	trace("open");
}
il risultato, sia che utilizzi URLStream o URLLoader è sempre lo stesso, nella finestra di output mi ritrovo:

open
downloading 100
onComplete

dopo aver simulato lo scaricamento quando il file è completamente scaricato.

Ogni suggerimento è bene accetto!!!

Grazie mille,
Daniele