首先导入 import 'dart:async';
再使用定时器的方法
var time = Timer.periodic(Duration(milliseconds: 1500), (t) {
print('执行');
t.cancel(); //关闭定时器
});
然后直接放到页面前面的void initState()方法里面就可以了
var time;
@override
void initState() {
super.initState();
time = Timer.periodic(Duration(milliseconds: 1500), (t) {
print('执行');
});
}
注意,执行完后一定要进行定时器的关闭,下面的方法可以在切换关闭页面的时候关闭定时器
@override
void dispose() {
print('关闭页面');
time.cancel();
super.dispose();
}
页面更新的话我是在初始化写了个方法,每次定时器刷新的时候就调用方法进行网络请求来进行刷新数据( setState(() { }); 为刷新页面方法 ),如下