我是颤抖的初学者,我想在我的测验应用程序中实现一个简单的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构造函数来创建我的代码。我相信知道这一点也有助于我实现和解释我遇到的其他构造函数。
CountdownTimer
用于每次必须在特定时间内完成一些工作时。这是一个向您展示的示例。
CountdownTimer countdownTimer = CountdownTimer(
Duration(seconds: 5),
Duration(seconds: 1),
);
countdownTimer.listen((timer) {
// this code runs every second for 5 seconds
});