Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
flex AS3解析多个XML提要_Xml_Apache Flex_Actionscript 3 - Fatal编程技术网

flex AS3解析多个XML提要

flex AS3解析多个XML提要,xml,apache-flex,actionscript-3,Xml,Apache Flex,Actionscript 3,我在flex项目中使用URLLoader解析XML提要,问题是匹配/检测Evevent.COMPLETE中加载的提要, 我不知道如何通过URLloader传递id、变量或对象标记。 在加载图像时,这可以通过在Loader中使用name属性来解决,但Loader不适用于XML,您能帮助我吗 private function readXmlFeed():void { XML.ignoreWhitespace

我在flex项目中使用URLLoader解析XML提要,问题是匹配/检测Evevent.COMPLETE中加载的提要, 我不知道如何通过URLloader传递id、变量或对象标记。 在加载图像时,这可以通过在Loader中使用name属性来解决,但Loader不适用于XML,您能帮助我吗

private function readXmlFeed():void {                                   
            XML.ignoreWhitespace = true;
            var xmlLoader:URLLoader = new URLLoader();                  
            xmlLoader.addEventListener(Event.COMPLETE, parseFeedXMLComplete);           
            xmlLoader.load(new URLRequest(url));                            
        }

 private function parseFeedXMLComplete(e:Event):void {              
            var feed:XML = new XML(e.target.data);

            switch (e.target.name) {
                case "feed1":
                     break;
                case "feed2":
                     break;
            }

        }

您可以扩展URLLoader:

package {
  import flash.net.URLLoader;
  import flash.net.URLRequest;
  public class FooURLLoader extends URLLoader {
    public var id : String;
    public function FooURLLoader(id : String) {
      super(null);
      this.id = id;
    }
  }
}
然后:

private function readXmlFeed(id:String):void {                                   
  XML.ignoreWhitespace = true;
  var xmlLoader:URLLoader = new FooURLLoader(id);                  
  xmlLoader.addEventListener(Event.COMPLETE, parseFeedXMLComplete);           
  xmlLoader.load(new URLRequest(url));                            
}

private function parseFeedXMLComplete(e:Event):void {              
  var feed:XML = new XML(e.target.data);
  switch (e.target.id) {
    case "feed1":
      break;
    case "feed2";
      break;
  }
}