1

我有一个打开的 .fla,一些 actionscript 变量(url、标题等)被更改并发布。这种情况经常发生,而且是相同的变量。我只是将 .swf 文件与 XML 文件一起保存,但它被上传到第三方平台,因此所有信息都需要包含在 .swf 文件中。没有办法将变量信息添加到第三方站点。

我想知道是否有一种方法可以在发布时从 xml 文件或其他内容(如脚本?)中获取新的变量信息,而无需打开 Flash IDE。能够一次做一堆这些也很棒。

任何帮助/链接/线索将不胜感激。谷歌没有帮助我。这甚至可能吗?

4

1 回答 1

1

mxmlc如果不打开 Flash IDE,则需要使用 ANT 或仅使用编译器加载外部资源或构建脚本,效果如下:

mxmlc -o output.swf -source-path="src/" -library-path+=library.swc. 

当您指出在编译时嵌入 XML 时,您可以使用[Embed]元数据标记嵌入 XML 或将您的 XML 粘贴到类中。

嵌入 XML

package
{
    public class XmlData
    {
        [Embed(source = "data.xml", mimeType = "application/octet-stream")]
        public static const Xml:Class;
    }
}

要使用 XML,请将其实例xml化为:

var xml:XML = new XML( new XmlData.Xml );

XML 变量

否则,您可以简单地将您的 xml 粘贴到这样的类中:

package
{
    public class XmlData
    {
        public static const xml:XML =
            <root>
                <element />
                <element attribute="value">data</element>
            </root>;
    }
}

尽管您必须编译 SWF,但这种方法很简单,因为您可以简单地将 XML 文档粘贴到类中。

这将被 e4x 正常引用,并且不需要异步加载。

var data:String = XmlData.xml.element.@attribute;
于 2012-07-07T03:22:18.000 回答