2011-05-01 53 views
0

我有兩個Flash項目 - projA和projB。他們都有一個FLA,他們各自庫中的一些對象可以實例化(爲ActionScript導出)和許多AS文件。ActionScript 3.0命名空間,嵌入和庫類

現在我想在projA中使用projB。我可以簡單地將所有projB AS文件複製到projA文件夾併合並這些庫。

但是 - 我會優先保留他們自己的文件夾中的項目,而不是使用命名空間。 所以我爲projB中的所有文件設置了「projb」的命名空間。

現在我可以通過使用import projb.MyClass將這些類導入到我的projA中。

This Works。然而,問題在於projB的這些類文件沒有找到由'export for actionscript'自動創建的類(在projB.fla中定義的類)。

我得到的錯誤:

1046: Type was not found or was not a compile-time constant: SomeClassNameDefinedInLibraryOfProjB. 

所以我試圖用

[Embed (source = "ProjB.swf")] //this is in the file MyClass.as on line 12 

但是嵌入projB.swf - 這給我的錯誤

C:\Projectfiles\ProjA\projb\MyClass.as, Line 12 'C:\Projectfiles\ProjA\projb\ProjB.swf' results in generated code, cannot use existing class 'projb.MyClass' 

還有:

Unable to transcode ProjB.swf 

如何正確地做到這一點? 謝謝!

回答

1

您需要指定嵌入符號。例如:

[Embed(source =「ProjB.swf」,symbol =「ProjB」)]