Załadowałem wiele zdjęć i używam do tego tablicy.AS3: Jak uzyskać adres URL dynamicznego modułu ładującego z programu LoaderInfo w funkcji nasłuchiwania zdarzeń?
loader[i].load(new URLRequest(picture[i]));
funkcja
My Event Listener jest włączona tak:
loader[i].contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
Moja onComplete obsługi zdarzeń pokazuje to:
trace(e.target); //OUTPUT: [object LoaderInfo]
Szukałem na właściwości w loaderInfo które mogłyby zidentyfikować ładowarka zainicjował program nasłuchujący (wartość "i"), tak aby można go było umieścić w każdym z nich, na przykład:
bitmapDataArr[i] = e.target.content.bitmapData;
bmVisArr[i] = new Bitmap(bitmapDataArr[i]);
Nie można jednak określić, które "i" zainicjowało określone wystąpienie detektora.
Wszelkie pomysły? Próbowałem nadać nazwę LoaderInfo bezskutecznie. Nadal nie mogę wydobyć nieznośnego, mało rozpoznawalnego numeru.
EDIT seans pętla dla ładowarek i funkcji onComplete:
for (i = 0; i < 10; i++) {
loader[i] = new Loader();
loader[i].contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete, false, 0, true);
loader[i].load(new URLRequest(letter[i]));
}
private function onComplete(e:Event):void {
trace("e.target",e.target); //OUTPUT: e.target [object LoaderInfo]
var LI:LoaderInfo = e.target as LoaderInfo;
var eNum:int = (????);
bitmapDataArr[eNum] = e.target.content.bitmapData;
bmVisArr[eNum] = new Bitmap(bitmapDataArr[eNum]);
}
Czy rozważałeś stworzenie niestandardowej klasy opartej na 'URLLoader' i zapisałeś tam informacje? –
@PetrHrehorovsky Nigdy nie stworzyłem niestandardowej klasy, nie wiedziałbym, od czego zacząć ... Mówisz, że nie mogę * uzyskać numeru "i" z loaderInfo? – Chowzen
Źródłem problemu jest dystrybucja połączonych obiektów między kilkoma tablicami. – null