这看起来很好,但我在屏幕上有一个简单的星形,当点击星形时,它应该从屏幕上删除图像。不明白为什么它不工作,希望你们中的一个人能够,非常感激
public class TouchRemove extends Sprite
{
private var _color:uint;
private var _radius:int;
private var star:Sprite;
public function mouseClick(event:MouseEvent): void {
star.visible = false;
}
public function TouchRemove(c:uint = 0xffff00, r:int = 100)
{
_color = c;
_radius = r;
star = new Sprite();
createStar();
addChild(star);
star.x = 250;
star.addEventListener(MouseEvent.CLICK, mouseClick);
}
private function createStar():void
{
star.graphics.lineStyle(9,_color);
star.graphics.moveTo(_radius, 0);
var angleIncrement = Math.PI / 5;
var ninety:Number = Math.PI * 3;
for (var i:int = 0; i <= 10; i++)
{
var radius:Number = (i % 2 > 0 ? _radius : _radius * .5);
var px:Number = Math.cos(ninety + angleIncrement * i) * radius;
var py:Number = Math.sin(ninety + angleIncrement * i) * radius;
if (i == 0) star.graphics.moveTo(px, py);
star.graphics.lineTo(px, py);
}
}
}
}
答案 0 :(得分:0)
您的代码看起来是正确的。 试试这个: - 将侦听器添加到父级 - 手动添加星形并通过代码添加侦听器 这有助于找到错误。