2009-10-27 51 views
0

得到了一些外部類,說MyClass.as引用從幀腳本靜態變量在AS3

MyClass.as有一個叫做foo

所以,通常在其他AS文件靜態變量,我可以

調用此

MyClass.foo =巴;

然而,這似乎是在時間軸腳本不同。

每次我嘗試這個,我得到一個靜態類型錯誤

1119參考:通過靜態類型flash.display使用的引用可能未定義的屬性FOO的訪問:級DisplayObjectContainer。

我試着做進口MyClass的,等等......似乎沒有任何被解僱。

任何提示?

+0

它適合我。你是如何聲明你的靜態變量的? – David 2009-10-27 18:00:45

+0

看起來像AS3的對象直接分配一個階段實例到一個靜態變量。當我創建一個非靜態變量來表示舞臺實例,然後將該變量分配給構造函數中的靜態變量時,錯誤消失了。我正在關閉Auto-Declare階段實例,因此有一些不尋常的規則需要遵守。我認爲這可能會被關閉。 – 2009-10-27 20:27:05

回答

0

,當你有編譯選項「自動聲明舞臺實例」關閉,這我經常做會導致此問題。您無法直接將階段實例分配給靜態變量。相反,您必須創建一個實例變量,然後將其分配給構造函數中的一個靜態變量。

我想不出比這更精細/清潔解決方案。

有一些項目中開啓自動聲明是不是一種選擇。