Я думаю, что вам нужен только один загрузчик, но это зависит от того, сколько вещей вы хотите загрузить одновременно.8 загрузчиков будут иметь (возможно) 8 изображений, отправляемых за один раз (это, конечно, может быть ограничено сервером).Вы должны назначить все изображения одному массиву, а затем зациклить этот массив, где это необходимо.Если вы хотите загрузить 8 изображений, то (используя код в связанном примере) это будет выглядеть примерно так:
import mx.controls.Loader;
var imgArr:Array = ["img1.jpg","img2.jpg",/* and so on */,"imgN.jpg" ];
var ldrArr:Array = [];
for (var :Number = 0; < imgArr.length; ++)
{
ldrArr[i] = new Loader();
ldrArr[i].contentLoaderInfo.addEventListener(Event.COMPLETE, finishLoading);
ldrArr[i].load(new URLRequest(imgArr[i]));
}
function finishLoading(e:Event):void {
// Get the current loader
var curLdr:Loader = (e.target as Loader);
curLdr.contentLoaderInfo.removeEventListener(Event.COMPLETE, finishLoading);
addChild(curLdr); // you will have to fix this to actually load the image
}
Но если вам нужен только один загрузчик, попробуйте это:
import mx.controls.Loader;
var imgArr:Array = ["img1.jpg","img2.jpg",/* and so on */,"imgN.jpg" ];
var ldr:Loader;
function startLoader() {
if ( imgArr.length > 0 )
{
ldr = new Loader();
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, finishLoading);
ldr.load(new URLRequest(imgArr.pop());
}
}
function finishLoading(e:Event):void {
ldr.contentLoaderInfo.removeEventListener(Event.COMPLETE, finishLoading);
addChild(ldr); // you will have to fix this to actually load the image
// start over with next image:
startLoader();
}