我正在使用Adobe Flash CS5.5(使用ActionScript 3.0),我正在尝试插入Flickr源。我想让Flickr图像显示在一种画廊中。到目前为止,这是我的代码,其结果是TEXT中的Flickr提要。如何让它显示实际图像?
import fl.controls.TextArea;
var xmlLoader:URLLoader = new URLLoader();
var xmlData:XML = new XML();
var texten:TextArea = new TextArea();
xmlLoader.load(new URLRequest("http://api.flickr.com/services/feeds/photos_public.gne?tags=snow&format=rss_200"));
xmlLoader.addEventListener(Event.COMPLETE, LoadXML);
xmlLoader.addEventListener(IOErrorEvent.IO_ERROR,ioErrorHandler);
function LoadXML(e:Event):void {
xmlData = new XML(e.target.data);
trace(xmlData);
texten.move(25,25);
texten.setSize(500, 300);
addChild(texten);
ParseXML(xmlData);
}
function ParseXML(vaderInput:XML):void {
var i:int = 0;
for each (var object:XML in vaderInput.channel.item) {
texten.text += "" + object.title + "\r";
texten.text += "" + object.description + "\r";
texten.text += "\r";
i++;
}
}
function ioErrorHandler(e:Event):void {
trace('ERROR!');
trace('Problems reading the XML-file!');
}
答案 0 :(得分:0)
阅读LiveDocs。您希望使用Loader
在XML中加载<media:thumbnail/>
数据。 Loader类扩展了DisplayObject,但包含了许多URLLoader
使用的相同属性/方法。
所以,基本上,你做这样的事情:
var l:Loader = new Loader();
l.contentLoaderInfo.addEventListener( Event.INIT, loaderInitHandler ); //the majority of events for Loader are attached to its contentLoaderInfo property. That is the only reason I included this line
l.load( new URLRequest( /*url goes here*/ );
this.addChild( l );
加载图片,立即将其添加到舞台上。一旦图像完全加载(据我所知,Flash无法显示部分加载的图像),它将在舞台上可见。
从那里,您可以将Loader视为另一个Sprite / MovieClip。