我需要用以下幫助...Flex定時器延遲更換器?
var timer:Timer = new Timer(x);
基本上x是數組...
時timer.start()
調用
運行,第一計數爲1000毫秒,則第二個800毫秒,第三個6200毫秒等等。換句話說,這是延遲的動態變化,而不是xms的連續延遲。
這怎麼辦?任何例子將不勝感激。
預先感謝您
我需要用以下幫助...Flex定時器延遲更換器?
var timer:Timer = new Timer(x);
基本上x是數組...
時timer.start()
調用
運行,第一計數爲1000毫秒,則第二個800毫秒,第三個6200毫秒等等。換句話說,這是延遲的動態變化,而不是xms的連續延遲。
這怎麼辦?任何例子將不勝感激。
預先感謝您
var timer:Timer = new Timer(delay);
timer.addEventListener(TimerEvent.TIMER, timerHandler);
timer.start();
function timerHandler(e:TimerEvent):void
{
timer.stop();
if (timer.currentCount == 1) {
timer.delay = 800;
} else if (timer.currentCount == 2) {
timer.delay = 6200;
} else {
//other conditions
}
timer.start();
}
什麼@package說是正確的。根據你的評論說你有數百次延遲,這將是更好的代碼。
var delays:Array=[1000, 500, 6200, ...];
var timer:Timer = new Timer(delay);
timer.addEventListener(TimerEvent.TIMER, timerHandler);
timer.start();
function timerHandler(e:TimerEvent):void {
timer.stop();
timer.delay = delays[timer.currentCount-1];
timer.start();
}
謝謝,這更清潔。我將timer.currentCount更改爲(timer.currentCount-1),因爲它跳過了數組的索引0。 – Zubair 2012-01-13 11:08:42
謝謝!它工作得很好,我把它改成了for循環,因爲我有數百個延遲。 – Zubair 2012-01-12 10:37:15