Вы получаете что-нибудь из следа?
Flash имеет внутреннее ограничение на количество одновременных загрузок. Вы загружаете 800 изображений в цикле, что означает, что первые ~ 780 или около того будут переопределены последними 20 или около того. Максимум, который я загружаю за один раз, составляет около 10 (я думаю, что BulkLoader имеет нечто подобное). Если вы хотите загрузить 800 изображений, используйте массив для отслеживания того, что загружается. Что-то вроде:
private var m_imagesLoaded:int = 0;
private var m_toLoad:Array = null;
private function _init():void
{
// create your array and set the first 10 or so loading
this.m_toLoad = new Array( 800 );
...
}
private function _onImageLoad( e:Event ):void
{
// load the next one in the list
this.m_imagesLoaded++;
this.m_toLoad[this.m_imagesLoaded].load();
// do whatever else
}
Что касается close()
, то оно " Отменяет операцию метода load (), которая в данный момент выполняется для экземпляра Loader ." Если в Loader
не происходит load()
, то, вероятно, ничего не произойдет.
P.S .: в своем выражении try
вы создаете новый Loader
каждый раз, прежде чем назначить его чему-то другому. Просто измените его на
var obj:Loader = ItemsBuilder.thumbLoadersArray[i];