2011-06-02 82 views
0

大家好我在Flash中运行XML URLLoader时遇到问题,而swf在flex中运行。(swf as3 XML URLLoader)在flex中不工作

我可以通过来回传递来回发送变量和数组,但没有发现任何问题,但发现了一个异常,我在网上找不到任何答案。

现在我的问题如下代码下面的工作完全正常,当我在闪存中运行它,但是当我导出swf并将其作为swf加载程序组件在flex中运行时,“processXML函数将不会触发”或者正在触发但URLLoader不会从XML文件中检索信息。当我自己运行swf时,它没有问题,但flex似乎停止了连接。 swf中的其他内容按预期工作。

我还发现,如果我向swf添加stage.addEventListener,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

我编辑你的主题行,因为经过“请加入大量的惊叹号“帮助”让我想让你不知道基本的论坛礼仪。 – JeffryHouser 2011-06-02 14:30:02

+0

你如何在Flex中加载SWF? 'ProcessXML'没有被击中,因为xml没有被加载,或者代码永远不会被运行?你看到该xml的HTTP请求吗?你尝试过调试吗? – 2011-06-02 14:53:56

回答

0
myLoader.load(new URLRequest("test.xml")); 
myLoader.addEventListener(Event.COMPLETE, processXML); 

首先 - 切换功能的地方。 你basicaly调用加载过程,连接手柄之前... 所以我的第一个建议是切换其交易执行的地方如下:

myLoader.addEventListener(Event.COMPLETE, processXML); 
myLoader.load(new URLRequest("test.xml"));