循环中的时间延迟

时间:2012-02-24 18:04:24

标签: actionscript-3 timer for-loop

如何在循环中延迟时间

当我写

containers_array[i].scaleX=0.01;
containers_array[i].scaleY=0.01;

然后

Tweener.addTween(containers_array[i], {scaleX:1,scaleY:1, time:1, transition:"easeOutElastic"});    

效果很好。 但是我希望每个containers_array [i]一个接一个地添加。我没有将它们缩放到100%,它们仍然是1%,就像我写下来时屏幕上的小点一样:

 var myTimer:Timer = new Timer(1000, sozler_random_array.length);
            myTimer.addEventListener(TimerEvent.TIMER, addButtonsTween);
            myTimer.start();

function addButtonsTween():void{
Tweener.addTween(sozC_array[i], {alpha:1,scaleX:1,scaleY:1, time:1, transition:"easeOutElastic"});  
}

提前谢谢

2 个答案:

答案 0 :(得分:1)

你就在那里。您只需要在每个计时器间隔添加和增加计数器:

var i:int = 0;

var myTimer:Timer = new Timer(1000);
myTimer.addEventListener(TimerEvent.TIMER, addButtonsTween);
myTimer.start();

function addButtonsTween( event:TimerEvent ):void
{
    if (i >= containers_array.length) 
    {
        myTimer.stop();
    }
    else
    {
        Tweener.addTween(containers_array[i], {alpha:1,scaleX:1,scaleY:1, time:1, transition:"easeOutElastic"});  
        i++;
    }
}

答案 1 :(得分:0)

缺少论据。

尝试将evt:TimerEvent传递给addButtonsTween

function addButtonsTween(evt:TimerEvent):void { }