在Flash中打包外部文件依赖项

时间:2009-08-13 05:02:16

标签: actionscript-3 file flash dependencies

我刚开始学习ActionScript,所以也许这很明显。我正在加载 .txt 文件,以便为我的Flash应用程序生成内容。但是,当我发布我的应用程序时,我似乎找不到用 .swf 打包 .txt 文件的方法。我希望能够在没有它的情况下从任何地方运行 .swf ,具体取决于文件。有解决方案吗?

谢谢!

3 个答案:

答案 0 :(得分:2)

这是Emanuele Feronato的优秀文章:

how-to-embed-a-text-file-in-flash

基本上,您使用embed语法将文件嵌入为ByteArray。这里的关键方法是调用ByteArray上的toString()方法转换为字符串。

希望这有帮助

答案 1 :(得分:0)

尝试加载.as文件,并在其中定义变量。从技术上讲,它们仍然是文本文件,仍然易于编辑,但它们会自动封装在.swf中。

在您的主要阶段,您只需添加include 'included.as';。在您的included.as文件中,您只需定义所需的任何变量,例如:

var someData:Array = new Array();
someData.push('This is some string');
someData.push('This is some other string');

包含as之后,您可以调用您定义的任何变量。导出时,.as文件嵌入到.swf中。

答案 2 :(得分:0)

更好的是只需在你的flash中嵌入一个.txt,如果你对编程更精通,我建议你创建一个静态类来存储你的应用程序的值。 就像:

class StaticData {

    static public var siteTitle:String = "My site name";
    static public var homeMessage:String = "Lorem Ipsum dolor sit amet...";
    static public var welcomeMessage:String = "Hello World";

    static public var siteWidth:Number = 1024;
    static public var siteHeight:Number = 780;

}

这是一种使用简单类结构存储静态值的安全且可靠的方法,使用类中的值,您只需要在flash中调用:

my_textfield.text = StaticData.siteTitle;
my_shape.width = StaticData.siteWidth;