我正在做动作脚本3,并且想知道是否可以暂时删除和eventListner。我知道removeEventListener,它完全删除了eventListener,我无法再次单击该按钮。
如果您需要更多详细信息,请参阅确切的问题。我的功能是当按下按钮时,会出现一个对象。在生成此对象的函数中,有一个eventListener,它导致一个允许用户按下该对象的函数。按下该对象时,它会消失,按钮将会生成动画。但是,由于原始eventListener仍然存在,因此您可以在运动时按对象并创建新对象。所以要点:我想要做的是在按钮移动时禁用eventListener,并在停止时重新激活它。
答案 0 :(得分:0)
如果要禁用其功能,最好删除侦听器。但是,如果要在不删除侦听器的情况下禁用其单击功能,则可以将.mouseEnabled设置为false。
答案 1 :(得分:0)
最好的方法是简单地使用一个标志来告诉函数动画是否完整。以下是我正在讨论的使用TweenLite
作为补间库的示例:
public class CreateButton extends Sprite{
private var animating:Boolean = false;
public function CreateButton(){
this.addEventListener(MouseEvent.CLICK, onClick, false, 0, true);
}
private function onClick(event:MouseEvent):void{
if(this.animating == false){
// Trigger creation functionality
TweenLite.to(this, 0.5, {/* Parameters for the actual animation */ onComplete:animationComplete});
this.animating = true;
}
}
private function animationComplete():void{
this.animating = false;
}
}