0

我一直在寻找这个答案好几天了,无论我怎么看,我都找不到我一生的答案。

我知道您可以通过以下方式轻松更改位图的图像:

var image = new Bitmap (Assets.getBitmapData ("image.png"));

// (然后)

image.bitmapData = Assets.getBitmapData("another-image.png");

但位图不支持鼠标事件。假设我想在有人点击它时更改图像,因此我需要它是一个精灵。有没有一种简单的方法来改变精灵的图像?提前感谢您的帮助!

4

1 回答 1

3

当然。您可以通过以下两种方式之一进行操作。

  1. 您为此创建一个自定义类并将位图添加为公共属性
  2. 您将位图添加到 Sprite 并通过那里访问它。看:

.

var bitmap:Bitmap = new Bitmap();
var container:Sprite = new Sprite();
this.addChild( this.container );
this.container.addChild( this.bitmap );

// to change the bitmap
this.bitmap.bitmapData = new BitmapData();

// or 
var bmp:Bitmap = this.container.getChildAt( 0 ) as Bitmap;
bmp.bitmapData = new BitmapData();

第二个选项假定位图是精灵中的唯一对象。如果您向精灵添加更多对象,您可能需要相应地调整索引。

于 2013-05-17T17:58:35.720 回答