2012-10-23 65 views
0

我正在使用flash和as3。我是as3的新手。我試圖加載和卸載SWF文件。無法在as3中加載SWF

我的項目包含2個文件,一個是索引文件,另一個是動物文件。在索引頁面我有動物按鈕。當我點擊這個按鈕時,動物SWF開始執行。但問題是,當我點擊動物SWF的索引按鈕,它沒有顯示索引頁再次,取而代之的則是顯示爲

無法加載SWF消息

我的索引頁的代碼是:

var urlReq:URLRequest = new URLRequest("animal/animal.swf"); 
swfLoader.load(urlReq); 
swfLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, swfLoadComplete); 
swfLoader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, 
    swfLoadError); 
function swfLoadComplete(evt:Event):void 
{ 
var loader:Loader = Loader(evt.target.loader); 
addChild(loader.content); 
swfLoader.removeEventListener(Event.COMPLETE, swfLoadComplete); 
} 
function swfLoadError(evt:IOErrorEvent):void 
{ 
    trace("Unable to load swf "); 
    swfLoader.removeEventListener(IOErrorEvent.IO_ERROR, swfLoadError); 
    } 

那麼怎樣做才能加載從動物SWF指數SWF?

+0

它不像在AS2中一個SWF可以替換currenlty加載SWF的內容 - 您的index.swf是您的主SWF,它加載到它本身animal.swf –

回答

0

您可能忘記了添加到顯示列表。使用addChild

var urlReq:URLRequest = new URLRequest("animal/animal.swf"); 
swfLoader.load(urlReq); 
this.addChild(swfLoader); 

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/display/DisplayObjectContainer.html

更新:我看到它沒有加載。你有一個IOErrorEvent.IO_ERROR。大多數情況下,這意味着該文件不在該網址。檢查位置或使用http調試器來確定您嘗試打開哪個位置。

+0

即使在寫this.addChild(swfLoader);它顯示相同的錯誤 – user1358548

+0

我檢查了路徑。該文件位於相同的位置 – user1358548