我无法访问SWC中的内容。主项目编译没有错误,但不显示或播放资产(声音,音乐)。
我的工作流程:
我。使用Flash CS5
1.创建MAsset.fla
2.导入声音,艺术
3.分配类名,检查第1帧中的导出
4A。在第1帧的动作面板中写出类
4B。要么。添加一个文档类并在那里写出类
5.出口SWC。 Filesize与我在主项目库中直接导入资产时的类似
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。
我做错了什么?
答案 0 :(得分:1)
当您说“通过ActionScript面板将SWC导入主项目”和“添加代码,从SWC调用类名”时,您究竟是什么意思?
如果您想将SWC用作资产库,则必须
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。