美文网首页Flutter_功能
Flutter 定时器 Timer

Flutter 定时器 Timer

作者: kass | 来源:发表于2019-07-31 01:28 被阅读0次

    A count-down timer that can be configured to fire once or repeatedly.

    定时器支持单次或周期性执行,定时执行回调方法。

    单次执行

    const timeout = const Duration(seconds: 3);
    const ms = const Duration(milliseconds: 1);
    
    startTimeout([int milliseconds]) {
      var duration = milliseconds == null ? timeout : ms * milliseconds;
      return new Timer(duration, handleTimeout);
    }
    ...
    void handleTimeout() {  // callback function
      ...
    }
    

    周期性执行

    确切的回调时间取决于基础计时器实现。 在周期时间* n 内将进行不超过n次回调,但两次连续回调之间的时间可以比持续时间更短和更长,取决于底层实现。

      Timer.periodic(Duration(milliseconds: 500), (timer) {
        if (timer.tick == 5) {
          timer.cancel();
          print("finish");
        }
        print("tick ${timer.tick}, timer isActive ${timer.isActive}");
      });
    
      print("start");
    

    执行结果

    start
    tick 1, timer isActive true
    tick 2, timer isActive true
    tick 3, timer isActive true
    tick 4, timer isActive true
    finish
    tick 5, timer isActive false
    

    简单的异步,尽快执行

    Timer.run((){
       print("run");
     });
    print("start");
    

    Timer 结合 Stopwatch 实现秒表计时

    相关文章

      网友评论

        本文标题:Flutter 定时器 Timer

        本文链接:https://www.haomeiwen.com/subject/gksarctx.html