我正在尝试创建一个图库,其中每个拇指都放置在其自己的影片剪辑中,该剪辑将包含更多数据,但它会一直失败,因为它不会让我引用新创建的影片剪辑实例。以下是我想要做的事情。
var xml:XML;
var xmlReq:URLRequest = new URLRequest("xml.xml");
var xmlLoader:URLLoader = new URLLoader();
var imageLoader:Loader;
var vidThumbn:ThumbNail;
var next_y:Number = 0;
for(var i:int = 0; i < xml.downloads.videos.video.length(); i++)
{
vidThumbn = new ThumbNail();
imageLoader = new Loader();
imageLoader.load(new URLRequest(xml.downloads.videos.video[i].ThumbnailImage));
vidThumbn.y = next_y;
vidThumbn.x = 0;
next_y += 117;
imageLoader.name = xml.downloads.videos.video[i].Files[0].File.URL;
videoBox.thumbList.thumbListHolder.addChild(vidThumbn);
videoBox.thumbList.thumbListHolder.vidThumbn.addChild(imageLoader);
}
每次都在最后一行死亡。我如何引用该vidThumbn实例,以便添加imageLoader?我不知道我错过了什么。感觉它应该有用。
答案 0 :(得分:0)
您必须将其称为vidThumbn,而不是扩展地址....
答案 1 :(得分:0)
我认为它失败了,因为imageLoader没有加载图像。此外,imageLoader不会将“数据”保存为iamgeLoader.content
最佳方式: 创建一个“LoaderSprite类”而不是imageLoader = new Loader();
public class LoaderSprite extends Sprite
{
private var _ldr : Loader;
public function LoaderSprite(url : String)
{
_ldr = new Loader();
_ldr.load(new URLRequest(url));
_ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
}
private function onComplete(event : Event) : void
{
//Bitmap(_ldr.content).smoothing = true;
addChild(_ldr.content);
// Fireing your own event
//dispatchEvent(new LoaderSpriteEvent(LoaderSpriteEvent.LOADED));
}
}