Flash AS3 解決SWF載入報錯問題

2021-09-01 01:40:41 字數 980 閱讀 9543

***

乙個swf載入另乙個swf時,常會報錯,最近研究了主要的報錯情況.

在剖析報錯情況前,先看下我們用的載入**:

as3**

var loadswf:loader = new loader;   

loadswf.contentloaderinfo.addeventlistener(event.complete, loadcom)   

loadswf.load(new

urlrequest("demo.swf"))   

private

function loadcom(event:event):void   

報錯情況有以下幾處:

1.顯示物件根目錄錯誤

有些人為圖方便,直接在把loader物件用addchild()新增到舞台上,這是錯誤的,因為有些子swf的程式在文件類中,把parent看成是stage,而直接新增loader物件,子swf中的parent就是loader了,loader相當於另乙個容器,而導致子swf執行不正常.

解決方法:看看上面的載入**,已經是解決方法了,第六行,我們獲得的getswf其實是乙個文件類的例項化,因為文件類必須繼承displayobject的,所以獲取的型別為displayobject是肯定正確的.我們把文件類直接新增到stage中,這樣就保證了與原swf的結構一致.

2.載入進來提示無法訪問空物件引用的屬性或方法.

這是因為子swf還沒有新增到舞台上就呼叫stage了,這時stage是null值,所以提示這個錯誤.

解決方法:在子swf的建構函式中,新增到舞台上再執行**.

as3**

public

function main()else}   

private

function init(e:event = null):void     

flash as3設定全屏

flash cs3中 設定flashplayer全屏 actionscript3.0 player9 author xuechong version 0.2 date 2011.02.21 2011.05.27 預設下flash影片會居中顯示。可以利用任何視覺化物件的stage.align屬性來重新...

Flash AS3效能優化

以下是這幾年開發過程中總結的,在此分享,希望看到此文的同學能有所獲。1.用乘法來代替除法,比如10 0.5要比10 2快。但差別並不是很大,只有在需要大量計算情況下,差別才比較明顯。2.用位運算代替除2或乘2。乙個數右移一位相當於該數除以2,左移一位相當於該數乘以2,但是移位運算速度比乘除運算速度要...

Flash AS3 常見程式設計錯誤

1000 對 的引用不明確。引用可能指向多項。例如,下面使用了 rss 和 xml 命名空間。每個命名空間為 hello 函式定義了不同的值。trace hello 語句返回此錯誤,因為它無法確定使用哪個命名空間。private namespace rss private namespace xml...