我想在我的小部件构建后,在一定的延迟后执行一个函数。颤振的惯用方法是什么?

我想要达到的目标: 我想从默认的FlutterLogo小部件开始,然后在一段时间后更改其样式属性。


当前回答

import 'dart:async';   
Timer timer;

void autoPress(){
  timer = new Timer(const Duration(seconds:2),(){
    print("This line will print after two seconds");
 });
}

autoPress();

其他回答

import 'dart:async';   
Timer timer;

void autoPress(){
  timer = new Timer(const Duration(seconds:2),(){
    print("This line will print after two seconds");
 });
}

autoPress();

倒计时后触发动作

Timer(Duration(seconds: 3), () {
  print("Yeah, this line is printed after 3 seconds");
});

重复的行为

Timer.periodic(Duration(seconds: 5), (timer) {
  print(DateTime.now());
});

立即触发定时器

Timer(Duration(seconds: 0), () {
  print("Yeah, this line is printed immediately");
});

只是在上面的答案上增加了更多的描述

计时器功能也适用于以下持续时间:

const Duration(
      {int days = 0,
      int hours = 0,
      int minutes = 0,
      int seconds = 0,
      int milliseconds = 0,
      int microseconds = 0})

例子:

  Timer(Duration(seconds: 3), () {
    print("print after every 3 seconds");
  });

你可以使用Future.delayed在一段时间后运行代码。例如:

Future.delayed(const Duration(milliseconds: 500), () {

// Here you can write your code

  setState(() {
    // Here you can write your code for open new view
  });

});

在setState函数中,你可以编写与应用程序UI相关的代码,例如刷新屏幕数据,更改标签文本等。

这里只留下大家都在寻找的片段:

Future.delayed(Duration(milliseconds: 100), () {
  // Do something
});