2011-03-04 33 views
0

我正在運行將swfs加載到舞臺上的for循環。 _componentData是一個XMLList。AS3:設置加載的swf的實例名稱

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);        
    } 
} 

Inside onDeviceLoadComplete我希望能夠設置加載的swf的實例名稱。我可以發送額外的參數給事件處理函數嗎?還是有更好的方法?

回答

0

我找到了一個不錯link是我指出了正確的方向,因爲我無法設置實例名稱。

我在做什麼是設置加載器的名稱prop到iname,然後使用e.target.loader.name而不是實例名稱。從那裏我能夠在我的發展中前進。謝謝!

0

很確定你不能在動態生成的對象上更改實例名稱。無論如何,將它們推入數組中以供參考可能會更容易。你可以在陣列中使用關聯鍵和引用它們的方式:

var myArray:Object = new Object(); 
myArray.apple = "red"; 

for (var item in myArray) { 
    trace(item); // apple 
    trace(myArray[item]); // red 
} 
+0

如果目標是屬性引用,則可以隨時設置'name'屬性。 – Pythovore 2011-03-04 14:53:59

+0

我不知道如何在處理函數中添加名稱。 – 2011-03-04 15:40:04