0

各サムが、より多くのデータを持つ独自のムービー クリップ内に格納されるギャラリーを作成しようとしていますが、ムービー クリップの新しく作成されたインスタンスを参照できないため、失敗し続けます。以下は私がやろうとしていることです。

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);

}

その最後の行で毎回死んでいます。imageLoader を追加できるように、その vidThumbn インスタンスを参照するにはどうすればよいですか? 何が欠けているのかわからない。それがうまくいくように感じます。

4

2 に答える 2

0

拡張アドレスではなく、vidThumbn として参照する必要があります。

于 2010-06-06T01:30:45.567 に答える
0

imageLoader が画像を読み込んでいないため、失敗したと思います。さらに、imageLoader はその iamgeLoader.content の「データ」を保持しません。

最善の方法: imageLoader = new Loader(); の代わりに「LoaderSprite クラス」を作成します。

    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));
    }
}
于 2010-06-08T13:02:05.667 に答える