方法1:
先获取其bitmapData对象,当进行点击操作时使用,bitmapData.getPixel32(x,y),获取点击位置的是否透明..然后再操作...
而mosueOver与mouseOut等事件稍为复杂点:
需要侦听mouseMove..然后对经过的坐标进行透明判断~~再抛出相应的事件...
方法2:
使用Sprite的另一个属性hitArea
在图像加载完毕后..
先绘制一个去除了透明部份的Sprite..
然后把该Sprite指定为源对象的hitArea..
private static function setHitArea():void
{
sp = new Sprite();
sp.graphics.beginFill(0xffffff,0);
sp.graphics.drawCircle(0,0,50);
sp.x = 85;
sp.y = 480;
//container.addChild(sp);
sp.mouseEnabled = false;
main.hitArea = sp;
}
如上,main是一个sprite,如此设置以后,main的响应区域即为sp的区域