我们的Flash项目具有以下结构。两个带有图形资源(符号)的FLA文件,使用SWC导入到纯AS3代码项目中。
在ui.fla和login.fla中都有一些符号,所以我们想把它们放在共享库中,就像这样。
我们不希望在例如中使用shared.fla的符号。 ui.fla的代码,但在创作环境中,以便我们可以将shared.fla中的符号拖动到ui.fla的符号中(无需复制)。这可能吗?
答案 0 :(得分:2)
可以通过Remote Shared Library
(RSL)共享资产。
但请注意:我没有在生产中看到这种方式,这只是我几年前的实验。
以下是一个例子:
Export for ActionScript
& Export in frame 1
,输入符号名称Export for runtime sharing
。输入该swf的名称:'shared_lib.swf'OK
Publish
它与SWF和SWC 所以,现在我们有了我们的图书馆。让我们创建一些将使用它的资产
Library
导出的符号,CTRL + C
(或右键单击,复制)Library
。 在此步骤中,我们有shared_lib.swf
,shared_lib.swc
和mainui.swc
。在mainui
之外,我们也可以使用外部资产。您可以以相同的方式创建其他资产。
让我们谈谈将使用我们资产的项目设置。
那么,我们目前到底有什么? Mainui.swc
包含符号,其中包含另一个'虚拟'符号。如果您只是尝试使用某个分析器在浏览器中加载mainui.swf
,您会看到,首先它会加载mainui.swf
,然后加载shared_lib.swf
。
但是如果你尝试创建一个项目并包含mainui.swc
,你将得到带有未定义符号的错误,因为所有具有mainui的错误 - 只是对shared_lib符号的虚拟引用。
要解决此问题,您必须完全在项目中包含shared_lib.swc
。在这种情况下,您将拥有:
mainui.swc
shared_lib.swc
现在,它会起作用。
希望,这会有所帮助。