当前位置: 首页 > 知识库问答 >
问题:

前端 - flutter 如何更新dialog UI?

拓拔麒
2023-07-25

我有一个弹窗想显示5秒后4秒后3秒后2秒后1秒后自动跳转的提示,但是这个秒数怎么更新,就是弹窗一打开就自动倒计时,不用按钮触发

共有1个答案

杨昆
2023-07-25
import 'dart:async';import 'package:flutter/material.dart';void main() {  runApp(MyApp());}class MyApp extends StatelessWidget {  @override  Widget build(BuildContext context) {    return MaterialApp(      home: Scaffold(        appBar: AppBar(          title: Text('Countdown Dialog'),        ),        body: Center(          child: RaisedButton(            child: Text('Show Dialog'),            onPressed: () {              showDialog(                context: context,                builder: (context) => CountdownDialog(),              );            },          ),        ),      ),    );  }}class CountdownDialog extends StatefulWidget {  @override  _CountdownDialogState createState() => _CountdownDialogState();}class _CountdownDialogState extends State<CountdownDialog> {  int countdown = 5;  @override  void initState() {    super.initState();    Timer.periodic(Duration(seconds: 1), (timer) {      if (countdown == 0) {        timer.cancel();        Navigator.of(context).pop();      } else {        setState(() {          countdown--;        });      }    });  }  @override  Widget build(BuildContext context) {    return AlertDialog(      title: Text('Countdown Dialog'),      content: Text('Closing in $countdown seconds...'),    );  }}
 类似资料:
  • 时间8.31 base深圳 吹爆面试官,体验很好,不过也很开心 面试官先自我介绍,开摄像头,很和蔼 做题,给了一个叉叉图标,问不用图片可以怎么实现(脑子懵了,答了svg和canvas绘制,不知道想考什么) 做题,try catch块里的输出 项目拷打,lz主要聊了webworker和大文件上传,面试官会边听边记录重点,面试官会问需求和根据重点细节探讨,20min Vue3相对Vue2的最大的改进

  • 之前name的更新是同步更新的没有问题现在需要走接口,等接口返回后再更新,我试过在这个文件中调用dispath但是调用报错,请问下这种异步的数据该怎么更新

  • 在build.gradle文件中,我找到了这样的代码 如何从初始化位置更改值?1.

  • 我试图为一个使用蓝牙进行通信的应用程序启动一个flutter项目。为此,我使用了flutter blue。 不幸的是,当尝试(在Android设备上)运行我创建的第一个示例时,遇到了以下错误: 如果我在Android Studio上,我会知道如何升级Android minSdkVersion,但在一个扑朔迷离的项目(使用VSCode)上,我有点迷失了。 是否有可能用颤振来增加最小Sdk版本,以及如

  • 我正在使用Jenkins作业DSL创建我的作业,并使用和测试我的脚本。 基于Gradle示例,我能够成功安装新的插件,但如何更新已经安装的插件? 我尝试使用UpdateCenter,但即使使用,我也无法强制测试等待更新过程。

  • 请帮帮我!该应用程序接近完成,因为我确实运行了flutter upgrade来解决一个bug,所以我必须运行:flutter clean flutter channel master flutter upgrade flutter run 现在它不再启动了,下面的代码出现了… []Flutter(通道稳定,1.22.5,在Mac OS X 10.15.7 19H114 darwin-x64,现场显