Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.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
通过外部XML在AS3中添加图像_Xml_Image_Actionscript 3_File_External - Fatal编程技术网

通过外部XML在AS3中添加图像

通过外部XML在AS3中添加图像,xml,image,actionscript-3,file,external,Xml,Image,Actionscript 3,File,External,我认为这是相对简单的,它似乎不适合我。我想我走对了方向。 这就是我所拥有的: import mx.controls.Image; public var newImage:Image; public var myXML:XML; public var myLoader:URLLoader = new URLLoader(); public function init():void{ myLoader.lo

我认为这是相对简单的,它似乎不适合我。我想我走对了方向。 这就是我所拥有的:

import mx.controls.Image;

        public var newImage:Image;

        public var myXML:XML;
        public var myLoader:URLLoader = new URLLoader();

        public function init():void{
            myLoader.load(new URLRequest("images.xml"));
            myLoader.addEventListener(Event.COMPLETE, processXML);
        }

        public function processXML(e:Event):void{
            myXML = new XML(e.target.data);
            newImage = new Image();
            newImage.source = myXML.IMAGE.@src;
            imgGroup.addElement(newImage);

        }
但它并没有为我显示图像。有什么想法吗

以下是我的XML供参考:

<?xml version="1.0" encoding="utf-8"?>
<GALLERY COLUMNS="5" XPOSITION="30" YPOSITION="30" WIDTH="100" HEIGHT="100">
<IMAGE src="img_data/download.jpg"  />

</GALLERY>

您的思路是正确的,但您需要先加载图像,然后才能使用它们。您可以使用来实现这一点,就像用加载XML一样


请参见

,仅供将来参考,您应该使用
[INDEX]
访问XML对象的每个节点,即使只有一个元素。所以
myXML.IMAGE.@src
实际上应该是
myXML.IMAGE[0]。@src
。它的解析速度要快一点(不过只在大量情况下才明显),如果您这样做的话,它会变得更加灵活。当您设置图像的
源属性时,Flex中的
Image
类已经加载了图像。我可以在Flex中轻松地完成它,但是我需要从XML加载它。我会这样做吗?imgLoader.load(myLoader);假设我这样做了:public var imgLoader:Loader;虽然我不使用Flex,但我每天都使用URLLoader(用于XML)和Loader(用于图像)从XML对象中给定的路径加载图像。如果Flex支持AS3(它支持AS3),这个解决方案应该可以工作。只需检查
image
节点,并在调用
Loader
时使用
src
属性作为路径。