flex中有睡眠功能吗?

Rah*_*hul 5 apache-flex actionscript

我希望我的代码在执行前等待几秒钟.那么在flex中有没有类似于sleep的函数?

小智 16

ActionScript中没有睡眠或延迟功能.像JavaScript一样,你可以这样使用setTimeout():

function trigger():void { setTimeout(doIt, 1000); }
function doIt():void    { Alert.show("done!"); }
Run Code Online (Sandbox Code Playgroud)

trigger()功能链接到任何事件(例如"点击")后,当事件发生时,警报框将在1秒后显示.

还有setInterval()clearlnterval()功能,您可以使用重复.但是,建议flash.utils.Timer在这种情况下使用该类.

private var myTimer:Timer;

private function init():void {
    myTimer = new Timer(5000, 1);
    myTimer.addEventListener(TimerEvent.TIMER_COMPLETE, timerHandler);
    myTimer.start();
}

public function timerHandler(event:TimerEvent):void {
    Alert.show("I was delayed!");
}
Run Code Online (Sandbox Code Playgroud)

  • 我建议你使用Timer而不是setTimeout做一个例子. (2认同)