Как получить 3 узла, используя AS3 и E4X? - PullRequest
1 голос
/ 26 апреля 2011

Я пишу класс в Main.as, который создает urlRequest и возвращает результат. Мне нужно 3 узла, minTemp, maxTemp и Icon. Я делаю запрос для одного города, поэтому должно быть только одно вхождение этих узлов. Как бы я структурировал AS3 для захвата этих узлов и их значений?

public class Main extends MovieClip {

public function Main() {

        var urlRequest:URLRequest=new URLRequest("http://myurl");
        var urlLoader:URLLoader=new URLLoader();
        var result:XmlDocument=new XMLDocument();

        urlLoader.addEventListener(Event.COMPLETE, parseXML);
        urlLoader.load(urlRequest);

        result.ignorWhite=true;
        result.parseXML(getXMLString());
        }
}

Я получаю ошибки 1046 Тип XmlDocument не найден, 1120 доступ к неопределенному свойству parseXML и 1180 вызов возможно неопределенного метода getXMLString. Как бы мне их прояснить?

1 Ответ

1 голос
/ 26 апреля 2011

Вы не определили функцию parseXMl, и результат также не создан, этот способ должен работать:

public class Main extends MovieClip {    
        public function Main() {

                var urlRequest : URLRequest = new URLRequest("http://myurl");
            var urlLoader : URLLoader = new URLLoader();

            urlLoader.addEventListener(Event.COMPLETE, onXmlLoaded);
            urlLoader.load(urlRequest);

        }

        private function onXmlLoaded(event : Event) : void
        {
            XML.ignoreWhitespace= true;
            var urlLoader : URLLoader = event.currentTarget as URLLoader;
            var resultXML : XML = XML(urlLoader.data);
            trace(resultXML);
        }
    }
...