2011-06-02 85 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"));