获取每个加载的图像

时间:2010-03-27 08:15:02

标签: actionscript-3 bitmap bitmapdata

图像只加载到最后一个MC中,如何将其加载到每个MC?

private function imageHandler():void {
    imageBox=new MovieClip();
    imageBox.graphics.lineStyle(5, 0xFFFFFF);
    imageBox.graphics.beginFill(0xFF0000);
    imageBox.graphics.drawRect(0,0,150,225);
    imageBox.graphics.endFill();
    allImage.addChild(imageBox);
}

private function getPhoto():void {
    for (i=0; i<myXMLList.length(); i++) {
        placePhoto();
        imageHandler();
        imagesArray.push(imageBox);
        imagesArray[i].x=20+(200*i);
    }
    addChild(allImage);
    allImage.x=-(allImage.width+20);
    allImage.y=-(allImage.height+50);
}

private function placePhoto():void {
    loadedPic=myXMLList[i].@PIC;
    galleryLoader = new Loader();
    galleryLoader.load(new URLRequest(loadedPic));
    galleryLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,picLoaded);
}

private function picLoaded(event:Event):void {
    var bmpD=event.target.content.bitmapData
        for (j; j<myXMLList.length(); j++) {
            bmp=new Bitmap(bmpD);
            bmp.smoothing=true;

            bmp.name="bmp"+j;
            imagesArray[j].addChild(bmp);
        }
}

1 个答案:

答案 0 :(得分:0)

现在有效,但显示

TypeError: Error #2007: Parameter child must be non-null.
    at flash.display::DisplayObjectContainer/addChild()
    at classes::section1/picLoaded()

at imagesArray [j] .addChild(bmpArray [j]);

private function placePhoto():void {

        loadedPic=myXMLList[i].@PIC;

        galleryLoader = new Loader();
        galleryLoader.load(new URLRequest(loadedPic));
        galleryLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,picLoaded);
    }

    private function picLoaded(event:Event):void {
        var bmpD=new Bitmap(event.target.content.bitmapData);
        bmpD.smoothing=true;
        bmpArray.push(bmpD);

        for (j; j<myXMLList.length(); j++) {
            imagesArray[j].addChild(bmpArray[j]);
        }
    }

它出了什么问题?