1

我从一个旧项目继承了一个 Actionscript 文件,并且有人告诉我可以从中生成 SWF,尽管我没有相应的 FLA 文件。

文件中的代码遵循以下形式:

package {

    import flash.display.LoaderInfo;
    import flash.display.MovieClip;
    import flash.display.Sprite;
    import flash.display.StageAlign;
    import flash.display.StageScaleMode;
    // additional import statements

    [SWF(width="640", height="480", frameRate="30", backgroundColor="#FFFFFF")]

    public class MyClass extends Sprite {
        // code, code, code
    }
}

我曾尝试将它引入 Flash Builder 并使用“作为 Web 应用程序运行”,但我得到了一堆我不理解的错误(对未定义方法的调用、无法找到的定义)。

我已经完成了相当多的 AS2 编码,但没有那么多 AS3 和零 Flex。我不确定我是否不了解在没有相应 FLA 的情况下编译 SWF 的一些最新方法。

有没有办法将这种类型的文件编译成 SWF?还是我以正确的方式进行处理,但可能只是缺少一些依赖文件?

4

1 回答 1

1

是否可以在没有原始 .fla 的情况下从 .as 文件生成 swf:

是的,如果您拥有所有依赖项。

使用 flashBuilder 时,您会查看所有导入,任何不是以您需要的文件开头的文件flash.或其他文件。mx.这也包括这些类文件中的所有导入。

此外,许多 .fla 使用库中的显示对象。如果是这种情况,则需要将它们导出到另一个 swc/swf,然后链接/加载到您的 flashBuilder 项目。这包括组件(“fl”包)。

所以总结一下:
如果 original.fla 只是一个链接了文档类的空项目,那么如果你有所有需要的类文件都可以导入,那么你就可以了。

如果原始 .fla 具有链接或拖放到时间线上的库资源,那么如果您无法获取原始 .fla,您将遇到问题。


如何在 Flash Builder 中执行此操作 在 Flash Builder
中,创建一个新的 ActionScript 项目。
将所有依赖文件放在它刚刚创建的项目的src文件夹中 - 保持它们的文件夹结构/层次结构(包名称表示它期望 .as 文件相对于 src 文件夹的文件夹)。

在树形视图中,找到主.as文件(documentClass),右键告诉它是默认的应用程序文件(如果需要,可以删除创建项目时自动生成的文件-projectname.as )。

运行项目,它会将 swf 放入与项目同名的 bin(或 bin-debug)文件夹中。

于 2012-09-14T20:39:20.670 回答