0

我无法访问 SWC 中的内容。主项目编译没有错误,但资产(声音、音乐)没有显示或播放。

我的工作流程:

一世。使用 Flash CS5
1. 创建 MAsset.fla
2. 导入声音,艺术
3. 分配类名,检查第 1 帧中的导出
4a。
在第 1 帧4b的动作面板中写出类。或者。添加一个文档类并在那里写出类
5. 导出 SWC。文件大小类似于我在主项目库中直接导入资产时的大小。
6. 创建 Project.fla 和文档类 Project.as
7. 通过 Actionscript 面板将 SWC 导入主项目。
8. 添加代码,从SWC 调用类名(例如DCL_UI_MOUSE)
9. 编译。

没有编译器错误,但什么也没做。生成的 SWF 文件大小仅反映了主项目中已编译的代码。

关于第 4 步,如果我只是在根时间线或文档类中写入类名,编译器错误就会消失,并且资产似乎是在 SWC 中编译的。但我也试过:

var asset0000:DCL_UI_MOUSE;

和:

var asset0000:DCL_UI_MOUSE = new DCL_UI_MOUSE();

无论如何,这些资产都不会进入最终的 SWF。

我究竟做错了什么?

4

1 回答 1

1

当您说“通过 ActionScript 面板将 SWC 导入主项目”和“添加代码,从 SWC 调用类名”时,您究竟是什么意思?

如果要将 SWC 用作资产库,则必须

  1. 将 SWC 添加到库路径,以及
  2. 始终将适当的import语句添加到您的 ActionScript 代码中。

没有第三步™。

您还可以通过链接到属性面板中的各个库对象将其用作运行时共享库​​。

要将您的库项目编译到 SWC,请选中“export for ActionScript”和“export in frame 1”,然后将您的完全限定类名写入“class”字段。“基类”应设置为 flash.display.MovieClip 或 flash.display.Sprite(用于 MovieClip 项)或 flash.display.SimpleButton(用于 Button 项)——以最适合对象的为准。

另外,请注意,习惯上使用驼峰式命名类名(例如:DclUIMouse)。命名常量时将使用全部大写的 DCL_UI_MOUSE。

于 2011-02-20T07:19:10.193 回答