2011-09-26 62 views
1

有沒有一種方法可以加載一個swf文件但不能自動實例化它的DocumentClass?沒有實例化加載swf

相反,我想要做的東西像下面這樣:

protected function mainLoaded(e:Event = null):void { 
    trace('mainLoaded'); 
    var main:* = this.mainLoad.createClassByName('Main'); 
    trace(main); 
} 

其中mainLoad是CasaLib的SwfLoad和createClassByName的一個實例是相當於loaderInfo.applicationDomain.getDefinition();

的事情是,加載時,我的SWF完成我可以看到它被創建,因爲有些跟蹤調用,儘管它顯然沒有被添加到顯示列表中。

回答

1

在你孩子的swf的文檔類,使用以下命令:

//constructor 
public function ChildSWF() 
{ 
    if(stage) init() 
    else addEventListener(Event.ADDED_TO_STAGE, init); 

}// end if 

private function init(e:Event = null):void 
{ 
    removeEventListener(Event.ADDED_TO_STAGE, init); 
    trace("This will only trace when an instance of ChildSWF is added to the stage, not when it's instantiated"); 

}// end function 
+0

不正是我所期待的,但它的作品,謝謝! –