我正在加载许多图片,并且正在使用数组来执行此操作。
loader[i].load(new URLRequest(picture[i]));
我的事件监听器功能是这样启用的:
loader[i].contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
我的 onComplete 事件处理程序显示了这一点:
trace(e.target); //OUTPUT: [object LoaderInfo]
我在 LoaderInfo 中查找了可以识别哪个加载程序启动了侦听器的属性(“i”的值),以便我可以专门针对每个加载程序进行处理,如下所示:
bitmapDataArr[i] = e.target.content.bitmapData;
bmVisArr[i] = new Bitmap(bitmapDataArr[i]);
但无法确定是哪个“i”启动了监听器的具体实例。
有任何想法吗?我尝试为 LoaderInfo 命名,但无济于事。我仍然无法提取讨厌的小识别号。
编辑显示加载程序和 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]);
}