0
我目前創建了一個類,可以用來訪問AS3中的所有xml數據。我遇到的問題是在xmlIsLoaded函數中更改變量。當我追蹤到xml變量時,它顯示了xml數據,但是當我在loadPanelData()函數中追蹤它時,我得到了一個空引用。在下面的代碼中我用一個int變量進行了實驗,當我測試它時,它跟蹤了0的初始值並且沒有變爲2.無法更改或訪問XML變量(AS3)
顯然有些事情我不理解xmlIsLoaded工作,但有必要訪問XML數據(當我只做一個沒有監聽器的常規函數時,xml變量是空的,並且不會跟蹤任何內容)。希望有人有一個解決方案,因爲我是使用XML與AS3的新手。
public class XMLLoader extends EventDispatcher
{
var xml:XML;
var productElement:XMLList;
var productElementXML:XML;
var num:int = 0;
public function XMLLoader()
{
var xmlUrl:URLLoader = new URLLoader(new URLRequest("Project/XMLFiles/PagesXML.xml"));
xmlUrl.addEventListener(Event.COMPLETE, xmlIsLoaded);
}
private function xmlIsLoaded(e:Event)
{
xml = new XML(e.target.data);
num = 2;
//trace("this is the xml starting point" + xml.pages + "this is the xml in the class");
dispatchEvent(new Event(Event.COMPLETE));
}
public function loadPanelData()
{
trace("product element test" + num);
}
}