AS3从位图动态更改/交换位图数据

时间:2012-04-26 19:26:38

标签: actionscript-3 flash bitmapdata

问题:

我有动态加载的图片。它是网站的背景。 10秒后,我想用新图像换出图像!

思想:

我原以为这是一个足够简单的过程。

var BGbmd:BitmapData = new backgroundBitmapData(); // from library
var BG:Bitmap = new Bitmap( BBbmd );
    BG.width = stage.stageWidth; //save portrait vs landscape for later...
    BG.scaleY = BG.scaleX;
    BG.smoothing = true;
addChild( BG );

我认为我能够将BGbmd更改为其他内容并且会更新:

function changeBackground() {
    BGbmd = new secondBackgroundBitmapData(); // from Library
}

或者那种程度的东西 - 但不是!没有什么变化!看来我必须删除孩子并重新添加它,这是一个痛苦的屁股因为我必须跟踪childIndex ......

外展: 我真的跳过那里有一些我无法找到的神奇功能或方法可以让我轻松找到替换bitmapdatas ......也许你会知道!

非常感谢你们! -Joel

1 个答案:

答案 0 :(得分:1)

更改位图内的位图数据。

BG.bitmapData = new secondBackgroundBitmapData();

Bitmap是舞台上的东西,它保留了对BitmapData本身的引用 - 而不是它所分配的变量。因此,您需要更改Bitmaps内部状态以切换图像。