大家好我在flash中运行XML URLLoader时遇到问题,而swf正在flex中运行。
我可以来回传递来回发送变量和数组的问题,但是发现了一个我在网络上找不到任何答案的异常。
现在我的问题如下,当我在flash中运行它时,下面的代码完全正常,但是当我导出swf并在flex中作为swf加载程序组件运行它时,“processXML函数不会触发”或者它正在触发但是URLLoader未从XML文件中检索信息。当我自己运行swf时它没有问题但是flex似乎停止了连接。瑞士法郎中的其他所有内容都按预期工作。
我还发现如果我将一个stage.addEventListener添加到swf中,flex会禁用swf中的所有内容。
以下代码位于Flash组件的根时间线中。 test.XML文件位于flash swf和flex src /文件夹的根文件夹中。我没有得到任何错误......它只是不会工作大声笑
////XML Loader/////
var myXML:XML;
var myLoader:URLLoader = new URLLoader();
myLoader.load(new URLRequest("test.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);
function processXML(e:Event):void
{
myXML = new XML(e.target.data);
}
function AfricaClick (event:MouseEvent):void
{
if(myXML.COUNTRY[0] == "yes")
{
gotoAndStop(2);
trace(myXML);
}
}
真的很感激一些帮助。
答案 0 :(得分:0)
myLoader.load(new URLRequest("test.xml"));
myLoader.addEventListener(Event.COMPLETE, processXML);
首先 - 切换功能位置。 在附加句柄之前,你基本上调用了加载程序... 所以我的第一个建议是切换他们的执行地点如下:
myLoader.addEventListener(Event.COMPLETE, processXML);
myLoader.load(new URLRequest("test.xml"));