1. import 'package:flutter/material.dart';
  2. import 'dart:async';
  3.  
  4. enum Action {
  5. Ok,
  6. Cancel
  7. }
  8.  
  9. class AlertDialogDemo extends StatefulWidget {
  10. @override
  11. _AlertDialogDemoState createState() => _AlertDialogDemoState();
  12. }
  13.  
  14. class _AlertDialogDemoState extends State<AlertDialogDemo> {
  15. String _choice = 'Nothing';
  16.  
  17. Future _openAlertDialog() async {
  18. final action = await showDialog(
  19. context: context,
  20. barrierDismissible: false,//// user must tap button!
  21. builder: (BuildContext context) {
  22. return AlertDialog(
  23. title: Text('提示'),
  24. content: Text('是否删除?'),
  25. actions: <Widget>[
  26. FlatButton(
  27. child: Text('取消'),
  28. onPressed: () {
  29. Navigator.pop(context, Action.Cancel);
  30. },
  31. ),
  32. FlatButton(
  33. child: Text('确认'),
  34. onPressed: () {
  35. Navigator.pop(context, Action.Ok);
  36. },
  37. ),
  38. ],
  39. );
  40. },
  41. );
  42.  
  43. switch (action) {
  44. case Action.Ok:
  45. setState(() {
  46. _choice = 'Ok';
  47. });
  48. break;
  49. case Action.Cancel:
  50. setState(() {
  51. _choice = 'Cancel';
  52. });
  53. break;
  54. default:
  55. }
  56. }
  57.  
  58. @override
  59. Widget build(BuildContext context) {
  60. return Scaffold(
  61. appBar: AppBar(
  62. title: Text('AlertDialogDemo'),
  63. elevation: 0.0,
  64. ),
  65. body: Container(
  66. padding: EdgeInsets.all(16.0),
  67. child: Column(
  68. mainAxisAlignment: MainAxisAlignment.center,
  69. children: <Widget>[
  70. Text('Your choice is: $_choice'),
  71. SizedBox(height: 16.0,),
  72. Row(
  73. mainAxisAlignment: MainAxisAlignment.center,
  74. children: <Widget>[
  75. RaisedButton(
  76. child: Text('Open AlertDialog'),
  77. onPressed: _openAlertDialog,
  78. ),
  79. ],
  80. ),
  81. ],
  82. ),
  83. ),
  84. );
  85. }
  86. }


文档:https://api.flutter.dev/flutter/material/AlertDialog-class.html

Flutter 中AlertDialog确认提示弹窗的更多相关文章

  1. easyui 中iframe嵌套页面,提示弹窗遮罩的解决方法,parent.$.messager.alert和parent.$.messager.confirm

    项目中用到easyui 布局,用到north,west,center三个区域,且在center中间区域嵌入iframe标签.在主内容区做一些小提示弹窗(例如删除前的弹窗提示确认)时,会遇到遮罩问题,由 ...

  2. Flutter中管理路由栈的方法和应用

    原文地址:https://www.jianshu.com/p/5df089d360e4 本文首先讲的Flutter中的路由,然后主要讲下Flutter中栈管理的几种方法. 了解下Route和Navig ...

  3. Flutter中如何使用WillPopScope

    老孟导读:在Flutter中如何实现点击2次Back按钮退出App,如何实现App中多个Route(路由),如何实现Back按钮只退出指定页面,此篇文章将告诉你. WillPopScope WillP ...

  4. 在ASP.net中的UpdatePanel,弹窗失败解决办法

    原文:在ASP.net中的UpdatePanel,弹窗失败解决办法 最开始我用: Response.Write("<script>alert('和哈呵呵呵呵呵呵!')</s ...

  5. js在关闭页面前弹出确认提示【转载】

    最近项目中出现个bug,就是导出数据后,会提示确认导航,其实实际需求并不需要这个提示,可能是之前遗留的问题.查了下资料是在触发了onbeforeunload事件,那么剩下的就是代码组织问题了. 众所周 ...

  6. UWP中的消息提示框(一)

    不管什么平台,应用内难免会出现一些消息提示框,下面就来聊聊我在UWP里用到的消息提示框. 弹窗也可按是否需要用户操作促发一些逻辑进行分为两大类. 不需要用户干涉的一类: MessageDialog:操 ...

  7. UWP中的消息提示框(二)

    在UWP中的消息提示框(一)中介绍了一些常见的需要用户主动去干涉的一些消息提示框,接下来打算聊聊不需要用户主动去干涉的一些消息提示框.效果就是像双击退出的那种提示框. 先说说比较简单的吧,通过系统To ...

  8. [UWP]在应用退出时弹出确认提示框

    1. 需求 在应用退出时(点击右上角的关闭按钮)弹出一个确认按钮可以说是一个最常见的操作了,例如记事本的"你是否保存": 但这个功能在UWP上居然有点小复杂.这篇文章将解释如何实现 ...

  9. Flutter中的浮动按钮FloatingActionButton 及融合底部工具栏

    FloatingActionButton 简称 FAB,从字面理解可以看出,它是“可交互的浮动按钮”,其实在Flutter默认生成的代码中就有这家伙,只是我们没有正式的接触. 一般来说,它是一个圆形, ...

随机推荐

  1. "人工智能",你怕了吗?

    近期“人工智能+”,已经是市场上非常火的一个风口,人工智能已经渗透到人类生活的方方面面,服务于我们的生活.但是人工智能的迅速发展,也引起了我的担忧,一系列科技电影展示出来的人工智能奴役人类的场景,让人 ...

  2. 完成一个springboot项目的完整总结------三

    这一次的总结是最关键的部分,主要涉及了ORM的三种操作,这些操作是项目的难点,三种操作包括多对一.多对多.一对多三种模式,接下来展示项目代码 1.多对一 clazz表对应grade表和charge表 ...

  3. 3种方法实现CSS隐藏滚动条并可以滚动内容

    隐藏滚动条的同时还需要支持滚动,我们经常在前端开发中遇到这种情况,最容易想到的是加一个iscroll插件,但其 实现在CSS也可以实现这个功能,我已经在很多地方使用了,下面一起看看这三种方法. 方法1 ...

  4. js数值的添加与删除

    js中数组元素的添加和删除 js中数组元素常用添加方法是直接添加.push方法以及unshift方法 删除方法则是delete.pop.shift 集修改方法为一身的则是splice 1.添加: (1 ...

  5. NISP二级笔记(一) 信息安全管理

    ISO27001 信息安全管理体系要求 ISO27002 信息安全控制措施(实用规则) ISO27003 信息安全管理体系实施指南 ISO27004 信息安全管理测量 ISO27005 信息安全风险管 ...

  6. VSCompile

    VS2012加载失败 No exports were found that match the constraint 开始->运行->devenv.exe /resetuserdata-& ...

  7. input重复上传图片失效的问题

    使用input的file来上传图片 如果是重复选择相同的图片就会失效 解决的办法就是当每次上传完图片后让input的值为空就可以解决了 附上代码 只需在末尾添加这句就行$(this).val(&quo ...

  8. Cogs 56. 质数取石子(博弈)

    质数取石子 ★★ 输入文件:stonegame.in 输出文件:stonegame.out 简单对比 时间限制:1 s 内存限制:128 MB 问题描述 DD 和 MM 正在玩取石子游戏.他们的游戏规 ...

  9. SB的SDOISB记

    恩, SDOI考完 考完. day0 : 上车时看myj费劲跨过行李的样子,嘲讽他腿短.很happy 吃饭时和myj吃了羊肉..汤 虽然贵, 但是意外的好吃 继续嘲讽myj不是男人,吃的少 不知怎么的 ...

  10. (8)打鸡儿教你Vue.js

    监听属性 监听属性 watch 通过 watch 来响应数据的变化 <div id = "app"> <p style = "font-size:25p ...