AS3:延迟输入帧动画

时间:2011-02-07 09:11:50

标签: actionscript-3 animation delayed-execution enterframeevent

我使用ENTER_FRAME获得淡出动画。我希望在2-3秒后开始淡出。如何创建此延迟?

txtAlert.addEventListener(Event.ENTER_FRAME,animAlert);

function animAlert(e:Event) {
    if(e.target.alpha>0) {
        e.target.alpha-=0.01;
    } else {
        e.target.parent.removeChild(e.target);
        e.target.removeEventListener(Event.ENTER_FRAME,animAlert);
    }
}

1 个答案:

答案 0 :(得分:4)

您应该使用计时器:

var timer:Timer = new Timer(3000, 1);
    timer.addEventListener(TimerEvent.TIMER, action);
    timer.start();

function action(evt:TimerEvent):void{
     txtAlert.addEventListener(Event.ENTER_FRAME,animAlert);

     trace("Times Fired: " + evt.currentTarget.currentCount);
     trace("Time Delayed: " + evt.currentTarget.delay);
}

顺便说一句,你应该看看像Twiner这样的动画库,它会让你的生活更轻松。