Actionscript 3 AS3:设置已加载swf的实例名称
我正在运行一个for循环,将swf加载到舞台上_componentData是一个XMLListActionscript 3 AS3:设置已加载swf的实例名称,actionscript-3,Actionscript 3,我正在运行一个for循环,将swf加载到舞台上_componentData是一个XMLList private function loadDevices():void { for each (var d:XML in _componentData.device) { var iname:String = d. @ iname; var mLoader:Loader = new Loader(); var mRequest:URLR
private function loadDevices():void
{
for each (var d:XML in _componentData.device)
{
var iname:String = d. @ iname;
var mLoader:Loader = new Loader();
var mRequest:URLRequest = new URLRequest(d. @ path);
mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onDeviceLoadComplete);
mLoader.load(mRequest);
}
}
在onDeviceLoadComplete中,我希望能够设置加载的swf的实例名称。我可以向事件处理程序函数发送额外的参数吗?或者有更好的方法吗?非常确定您不能在动态生成的对象上更改实例名称。在任何情况下,将它们放入数组以供参考都可能更容易。您可以在数组中使用关联键并参照它们:
var myArray:Object = new Object();
myArray.apple = "red";
for (var item in myArray) {
trace(item); // apple
trace(myArray[item]); // red
}
我发现了一个很好的例子,它为我指明了正确的方向,因为我无法设置实例名
我正在做的是将加载程序的name prop设置为iname,然后使用e.target.loader.name而不是实例名。从那里我可以在我的发展中前进。谢谢 如果目标是属性引用,则始终可以设置“name”属性。我不确定如何从处理函数内部添加名称。