Flutter 组件之AlertDialog、SimpleDialog、showModalBottomSheet、showToast、自定义Dialog
AlertDialog dialog弹框
在
showDialog
中 定义AlertDialog
_alertDialog () async {var result = showDialog<void>(context: context,barrierDismissible: true,// false = user must tap button, true = tap outside dialogbuilder: (BuildContext dialogContext) {return AlertDialog(//定义AlertDialogtitle: Text('标题'),content: Text('dialog内容'),actions: <Widget>[FlatButton(child: Text('取消'),onPressed: () {Navigator.of(dialogContext).pop(); // 就像前面的抽屉一样来关闭弹框},),FlatButton(child: Text('确认'),onPressed: () {Navigator.of(dialogContext).pop(); // Dismiss alert dialog},),],);},);}
SimpleDialog 下拉选框
_simpleDialog() async{showDialog<void>(context: context,barrierDismissible: true,// false = user must tap button, true = tap outside dialogbuilder: (BuildContext dialogContext) {return SimpleDialog(//定义SimpleDialogtitle:Text("选择内容"),children: <Widget>[SimpleDialogOption(//选框子元素child: Text("option A"),onPressed: (){Navigator.of(dialogContext).pop();print("option A");},),Divider(),//分割线SimpleDialogOption(child: Text("option b"),onPressed: (){Navigator.of(dialogContext).pop();print("option b");},),Divider(),//分割线SimpleDialogOption(child: Text("option c"),onPressed: (){Navigator.of(dialogContext).pop();print("option c");},),],);},);}
showModalBottomSheet
_showModalBottomSheet() async{showModalBottomSheet(context: context,builder:(context) {return Container(height: 200,child: Column(children: <Widget>[ListTile(title: Text("分享 A"),onTap: (){print("分享 A");Navigator.of(context).pop();},),Divider(),ListTile(title: Text("分享 b"),onTap: (){print("分享 b");Navigator.of(context).pop();},),Divider(),ListTile(title: Text("分享 c"),onTap: (){print("分享 c");Navigator.of(context).pop();},),],),);});}
fluttertoast 第三方库
import 'package:fluttertoast/fluttertoast.dart';_showToast() {Fluttertoast.showToast(msg: "吐司内容",toastLength: Toast.LENGTH_LONG,gravity: ToastGravity.BOTTOM,//显示位置timeInSecForIosWeb: 1,//显示时长苹果backgroundColor: Colors.black,//背景颜色textColor: Colors.white,//文字颜色fontSize: 16.0//文字大小);}
Column(children: <Widget>[RaisedButton(child: Text("alert弹出框-AlertDialog"),onPressed: _alertDialog,),RaisedButton(child: Text("弹出框-SimpleDialog"),onPressed: _simpleDialog,),RaisedButton(child: Text("底部弹出框-showModalBottomSheet"),onPressed: _showModalBottomSheet,),RaisedButton(child: Text("吐司-showToast"),onPressed: _showToast,),RaisedButton(child: Text("自定义Dialog"),onPressed: () {showDialog(context: context,builder: (context) {return MyDialog();//必须先引入你的组件});},),])
自定义Dialog
创建 MyDialog组件
import 'package:flutter/material.dart';/*
* Dialog Template
* 自定义dialog
*/
class MyDialog extends Dialog {@overrideWidget build(BuildContext context) {return Material(//定义全局大小的元素type: MaterialType.transparency, //设置整个元素是透明的child: Center(child: Column(mainAxisAlignment: MainAxisAlignment.center,//居中显示children: <Widget>[Padding(//边距组件padding: EdgeInsets.all(10),//设置内边距child: Container(//这里就可以实现一些自定义功能height: 200,width: 200,color: Colors.white,child: RaisedButton(child: Text("关闭自定义Dialog"),onPressed: (){Navigator.of(context).pop();},),),),],)),);}
}
Flutter 组件之AlertDialog、SimpleDialog、showModalBottomSheet、showToast、自定义Dialog相关推荐
- Flutter对话框(AlertDialog,SimpleDialog,showModalBottomSheet,showToast)以及定时器
Flutter对话框 AlertDialog(确认对话框) SimpleDialog(选择对话框) showModalBottomSheet(底部弹出的对话框) showToast(提示信息框) 自定 ...
- android如何自定义dialog,Android—自定义Dialog
在 Android 日常的开发中,Dialog 使用是比较广泛的.无论是提示一个提示语,还是确认信息,还是有一定交互的(弹出验证码,输入账号密码登录等等)对话框. 而我们去看一下原生的对话框,虽然随着 ...
- android 自定义dialog样式,Android 自定义dialog类
首先定制style样式 styles.xml 加入自定义样式 @null true true true @color/transparent @color/transparent true 0.6 在 ...
- Flutter开发之AlertDialog、AboutDialog对话框组件-2(41)
继上一篇介绍了SimpleDialog对话框组件 Flutter开发之SimpleDialog对话框组件-1(40) 这里再介绍一种带有确定.取消按钮的对话框组件:AlertDialog.AboutD ...
- Flutter 基础目录结构介绍、入口自定义widget、等相关组件使用
提示:此文章为前端学习flutter过程,如有歧义期望各位大大的宝贵意见 学习Dart 基础知识 移步这里 安装flutter环境相关 移步这里 flutter基础组件使用相关 移步这里 文章目录 一 ...
- 【Flutter】自定义 Flutter 组件 ( 创建自定义 StatelessWidget、StatefulWidget 组件 | 调用自定义组件 )
文章目录 一.Flutter 组件简介 二.Flutter 自定义 StatelessWidget 组件流程 1.导入父类包 2.选择继承的父类 3.设置成员变量及构造函数 4.重写 build 方法 ...
- Flutter 组件之 Flutter高级自定义TabBar(教程含源码)
实战需求 Flutter 组件之 Flutter高级自定义TabBar(教程含源码) 本文价值与收获 看完本文后,您将能够作出下面的界面 实战代码 import 'package:flutter/ma ...
- Flutter:Dialog对话框及自定义Dialog
基本属性介绍 几个自带的dialog用法和属性基本一致,只是部分参数不同 const AlertDialog({Key? key,this.title, //对话框标题组件this.titlePadd ...
- Flutter 自定义Dialog
我们项目开发中,有很多地方会用到dialog,虽然flutter自身也有,比如AboutDialog.AlertDialog.SimpleDialog.CupertinoAlertDialog等等之类 ...
最新文章
- Mysql 递归获取多重数组数据
- 关于一部分数学知识》(工具向)(实时更新)
- IE userdata
- 如何导出maven子项目_如何使用maven 轻松重构项目
- oracel Pipelined pipe row的用法
- 哈希表(HashTable)探究(转)
- node mysql做项目视频教程_2018最新 自学Node/Node.js/Nodejs视频教程 后端框架Express项目实战...
- Oracle B-tree、位图、全文索引三大索引性能比较及优缺点汇总(转载)
- CSS UI状态伪类选择器
- HDU 4740 The Donkey of Gui Zhou (模拟)
- vc6.0 debug 比 release 快??_全网稀缺的快应用开源项目熊宝儿歌故事QuickApp
- 2019年web前端全集_2019年最佳30+ Web工具
- (转) Csrss进程剖析
- 计算机主板设置语言,bios,教您怎么把电脑BIOS设置成中文
- 软件评测师考试(下午考点,要背)
- HTML合并表格(单元格)
- ThinkPHP3.1.3 { Fast Simple OOP PHP Framework } — [ WE CAN DO IT JUST THINK ] 报错解决办法。...
- 最佳阵容问题matlab,数学建模-最佳阵容问题.doc
- 大数据推荐算法概念简述
- css实现仿element ui配色的小圆圈状态标记
热门文章
- 程序人生--2000年(4)
- 推荐一个有用的Excel操作类库 LinqToExcel
- 若要赞美晴天 请等到黄昏之后
- 使用飞信VMDotNet使C#程序脱离.NET FRAMEWORK也能运行的一些心得 ------(我复制别个的)
- [Demo]提取个人博客园闪存+评论
- Google Android开发入门与实战 视频教程 源代码 游戏应用开发 传送门
- 滴滴开源Logi-KafkaManager 一站式Kafka监控与管控平台
- 网络空间搜索FOFA
- 让AI自己调整超参数,谷歌大脑新优化器火了,自适应不同任务,83个任务训练加速比经典Adam更快...
- Cocos2dx 3.1.1 之 加速传感器、监听物理按键