如何在flutter中的应用程序中实现一个简单的倒计时器构造函数?

问题描述 投票:0回答:1

我是颤抖的初学者,我想在我的测验应用程序中实现一个简单的CountDown时间(以分钟和秒计)。

我试图实现我在官方Flutter doc site中找到的CountdownTimer构造函数,但是我无法将构造函数应用到我的应用程序中的实际代码中。我能够复制@Yann39在(Flutter Countdown Timer)提供的代码。但我想学习如何自己实现构造函数。

Timer _timer;
int _start = 10;

void startTimer() {
  const oneSec = const Duration(seconds: 1);
  _timer = new Timer.periodic(
      oneSec,
      (Timer timer) => setState(() {
            if (_start < 1) {
              timer.cancel();
            } else {
              _start = _start - 1;
            }
          }));
}
@override
void dispose() {
  _timer.cancel();
  super.dispose();
}
Widget build(BuildContext context) {
  return new Scaffold(
      appBar: AppBar(title: Text("Timer test")),
      body: Column(
        children: <Widget>[
          RaisedButton(
            onPressed: () {
              startTimer();
            },
            child: Text("start"),
          ),
          Text("$_start")
        ],
      ));
}

CountdownTimer构造函数

CountdownTimer(
Duration duration,
Duration increment, {
Stopwatch stopwatch
})

我基本上想知道如何实现CountDown timer构造函数来创建我的代码。我相信知道这一点也有助于我实现和解释我遇到的其他构造函数。

dart flutter
1个回答
0
投票

CountdownTimer用于每次必须在特定时间内完成一些工作时。这是一个向您展示的示例。

CountdownTimer countdownTimer = CountdownTimer(
  Duration(seconds: 5),
  Duration(seconds: 1),
);
countdownTimer.listen((timer) {
  // this code runs every second for 5 seconds
});
© www.soinside.com 2019 - 2024. All rights reserved.