timer - 如何在flutter中进行倒计时?
问题描述
如何实现一个计时器小部件,它在时间到期后导航到另一个屏幕,或者它在之后重新启动,让我们说一个滑动手势?
解决方案
Flutter 有一个类RestartableTimer
,它从Timer
. 设置计时器时,它获取一个Duration
元素和一个回调方法。
当您想重新启动它时,您可以简单地重置它。这是完成所有这些的代码片段。你可以把代码放到相关的地方。
//You need to import this
import 'package:async/async.dart';
// Duration is 5 seconds
Duration _timerDuration = new Duration(seconds: 5);
// Creating a new timer element.
RestartableTimer _timer = new RestartableTimer(_timerDuration, _startNewPage);
fun _startNewPage() {
Navigator.push(
context,
MaterialPageRoute(builder: (context) => SecondScreen()),
);
}
// Restarting the timer
_timer.reset();
推荐阅读
- uwp - 安装 UWP 应用返回未经授权的错误
- google-apps-script - google apps 脚本创建的 html 发布在 Google Docs 中,从今天开始出现错误
- jmeter - 通过java代码添加jmeter用户参数预处理器
- scala - Spark SQL:如果存在则更新,否则忽略
- javascript - 使用来自 servlet 的上一个表单值重定向回上一个 jsp 页面
- image - TclError:图像“pyimage68”不存在
- javascript - 两个点击事件同时工作
- html - 如何访问 html 文件中 manifest.json 中映射的文件?
- spring-boot - SpringBoot 使用 ControllerAdvice 中的自定义错误处理所有错误
- typescript - 索引类型参数的打字稿默认值