AS3 LoaderMax: загрузка картинок в массив? - PullRequest
0 голосов
/ 06 октября 2011

У меня следующая проблема. Я хочу загрузить 3 картинки на сцену, используя LoaderMax. Их путь хранится в массиве (URL), и, наконец, я хочу, чтобы все их объекты displayList были в новом массиве с именем pictures.

вот мой код:

 var urls:Array = new Array("../data/bild1.jpg","../data/bild2.jpg", "../data/bild3.jpg");
     for(var i:Number = 0; i< urls.length; i++){
       var loadery = new ImageLoader(urls[i]);
       loadery.load()
       pictures[i] = loadery;
       addChild(pictures[i]);
       pictures[i].alpha = .5;

Я хочу, чтобы они были сохранены в массиве «картинки», потому что я хочу позже сделать с ними несколько вещей, которые более просты, если они хранятся в массиве.

Итак, Flash получает ошибку компилятора для pictures[i] = loadery; Он говорит TypeError: Error #1009: Cannot access a property or method of a null object reference.

Так, как я могу сделать это легко?

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 06 октября 2011

ImageLoader не загружает содержимое синхронно, чтобы получить экземпляр загруженного изображения, вы должны прослушать событие onImageLoad:

function onImageLoad(event:LoaderEvent):void {
    // you image is accesible from event.target.content variable
}

Чтобы загрузить несколько изображений, вы можете использовать объект LoaderMax, который будет ставить в очередь вашизагрузки, чтобы увидеть, как именно использовать класс ImageLoader, прочитайте его документацию

...