Salve a tutti.
Devo caricare dei file jpg da mettere sullo stage.
URL e titolo delle immagini sono scritti su un file XML, quindi devo caricare il file XML utilizzando le solite classi URLLoader e XML e l'evento COMPLETE della classe URLLoader.
Quando ho caricato il file nell'oggetto XML inserisco i dati (URL e Titoli) in due XMLList e poi usando un ciclo For each estraggo i percorsi dei file jpg dalla lista per caricare le immagini con un oggetto Loader. Come al solito, sempre utilizzando l'evento COMPLETE dell'oggetto Loader, per ogni immagine caricata, ne definisco la posizione e la aggiungo allo stage.
Purtroppo solo una immagine viene aggiunta allo stage (la prima) ma non le sucessive.
Dove sbaglio?
Ecco il codice
var URLFileXML :URLRequest;
var LoaderXML :URLLoader;
var GestoreXML :XML;
var strURL :String = "Immagini/Immagini.xml";
var Lista_FotoURL :XMLList;
var Lista_FotoTitoli :XMLList;
var URLFileIMG :URLRequest;
var CaricatoreIMG :Loader;
var CaricatoreInfo :LoaderInfo;
var pos_x :uint;
var pos_y :uint
URLFileXML = new URLRequest;
LoaderXML = new URLLoader;
URLFileXML.url = strURL;
LoaderXML.addEventListener(Event.COMPLETE,Completa toCaricamentoXML);
LoaderXML.load(URLFileXML);
function CompletatoCaricamentoXML(e:Event):void
{
GestoreXML=new XML(e.target.data);
CaricaFoto(GestoreXML)
}
function CaricaFoto(Dati:XML):void
{
Lista_FotoURL=Dati.foto.@url;
Lista_FotoTitoli=Dati.foto.@titolo;
for each (var path:XML in Lista_FotoURL)
{
URLFileIMG = new URLRequest;
URLFileIMG.url = path;
CaricatoreIMG = new Loader;
CaricatoreInfo = LoaderInfo(CaricatoreIMG.contentLoaderInfo);
CaricatoreInfo.addEventListener(Event.COMPLETE,Com pletatoCaricamentoIMG);
CaricatoreIMG.load(URLFileIMG);
}
}
function CompletatoCaricamentoIMG(e:Event):void
{
var imgCaricata:Loader=Loader(e.target.loader);
imgCaricata.width = 100;
imgCaricata.height = 100;
imgCaricata.x = pos_x + imgCaricata.width + 5;
imgCaricata.y = pos_y;
addChild(imgCaricata)
}
Qualche consiglio??
Grazie per la cortese risposta.

Rispondi quotando