Цитата:
Сообщение от toFL
2) Загрузка нескольких изображений (и другой информации) решается двумя способами:
а) Грузить одним загрузчиком картинки по очереди
б) Создавать для каждого запроса новый загрузчик
|
Можешь рассказать чуть поподробнее? Я в итоге пришел к такому коду:
(все переменные явным образом объявлены в классе)

Код AS3:
....
backPathsArray = calf(_named,_actio,"back");
....
public function calf(_named:String,_actio:String,_line:String):Array
{
var directionArray:Array = [];
var loadedFileArray:Array = [];
// Это ассоциативный массив, в нём содержатся ссылки на файлы, которые необходимо загрузить.
for (var i in SomebodyMonsters[_named][_actio][_line])
{
_loader = new Loader();
_loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
_loader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgress);
_loader.addEventListener(IOErrorEvent.IO_ERROR, onErrorHandlerIOErrorEvent);
_loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onInfoIOErrorEvent);
try {
_loader.load(new URLRequest(SomebodyMonsters[_named][_actio][_line][i]));
} catch (e:TypeError)
{
trace("Не могу загрузить файл");
trace(e.message);
}
Далее, если здесь, скажем, использовать конструкцию

Код:
directionArray.push(_loader);
addChild(directionArray[0]);
то на экране отображается оная картинка, а в конечном массиве образуется множество [object Loader], но они мне не нужны, я хочу поместить все картинки в массив, из которого затем буду их использовать, поэтому пробую применять следующий код - первые 3 строчки ключевые.

Код AS3:
var image:Bitmap = _loader.content as Bitmap;
var bitmap:BitmapData = image.bitmapData;
directionArray.push(image);
}
loadedFileArray = directionArray;
return loadedFileArray;
}
Как результат, возвращаемый массив содержит сплошные null. Тоже самое происходит, если эти строчки заменить одной

Код:
directionArray.push(_loader.content);
Почему так происходит? В чём мои ошибки?
Мне в конечном итоге нужен какой-либо способ нормально взаимодействовать с загружаемыми картинками, как экземплярами Bitmap, но через массив.
Пожалуйста, помогите, не выходит разобраться.
P.S. Забыл добавить, что все события срабатывают нормально, (компилятор бывало ругался только на строчку var bitmap:BitmapData = image.bitmapData

. По событию прогресса видно, что картинки загружены.