flutter Timer 延时器,定时器详解

概览

Timer是flutter自带的官方延时器工具,本篇研究一下Timer的用法。

重要属性

timer.isActive 某个timer是否处于激活状态

主要用法

引用

import 'dart:async';

延时

Timer(Duration,handleback)

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
  ...
}

定时循环

Timer.periodic(Duration,handleback)

const timeInterval = const Duration(seconds: 3);

_timer = Timer.periodic(timeInterval , (timer){
	// 循环一定要记得设置取消条件,手动取消
	if(someCondition is true){
		_timer.cancel();
	}	
});

@override
void dispose() {
    // 组件销毁时判断Timer是否仍然处于激活状态,是则取消
    if(_timer.isActive){
		_timer.cancel();
	}
    super.dispose();
}

取消定时器

timer.cancel()

官方api地址

Timer-class
Duration

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值