SimpleDialogBox
import 'package:flutter/material.dart';
import 'dart:ui';
import 'dart:async';
enum Option{A,B,C}
void main() => runApp(MyApp()); class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
debugShowCheckedModeBanner: false,
home: HomePage(),
);
}
} class HomePage extends StatefulWidget {
@override
_HomePageState createState() => _HomePageState();
} class _HomePageState extends State<HomePage> {
Future dialogBox()async{
final option=await showDialog(
context: context,
builder: (BuildContext context){
return SimpleDialog(
title: Text('this is a dialog'),
children: <Widget>[
SimpleDialogOption(
child: Text('option A'),
onPressed: (){
Navigator.pop(context,Option.A);
},
),
SimpleDialogOption(
child: Text('option B'),
onPressed: (){
Navigator.pop(context,Option.B);
},
),
SimpleDialogOption(
child: Text('option C'),
onPressed: (){
Navigator.pop(context,Option.C);
},
),
],
);
}
);
switch(option){
case Option.C:
debugPrint('your choice is C');
break;
case Option.A:
debugPrint('your choice is A');
break;
case Option.B:
debugPrint('your choice is B');
break;
}
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Container(
width: window.physicalSize.width,
height: window.physicalSize.height,
child: Image.network(
'http://www.ecobentech.com/img/a.jpg',
fit: BoxFit.cover,
),
),
floatingActionButton: FloatingActionButton(
onPressed:(){dialogBox();},
child: Icon(Icons.text_fields),
),
floatingActionButtonLocation: FloatingActionButtonLocation.centerDocked,
);
}
}
SimpleDialogBox的更多相关文章
- jquery不同版本导致的checkbox设置了属性,但是没有选中效果
由于本人好久不做B/S了,今天同学问我个问题才发现了jquery版本还是存在差异的,今天写的就是关于获取checkbox属性的方式(可能不应该叫属性了其实,后面就知道了). 看下面的代码截图吧 < ...
随机推荐
- DOCTYPE声明作用?标准模式与兼容模式?
<!DOCTYPE>文档声明是用来告诉浏览器使用哪种DTD,一般放在(X)HTML文档开头声明,用以告诉其他人这个文档的类型风格:DTD(文档类型定义)是一组机器可读的规则,它们指示(X) ...
- tornado 初解
对于使用习惯Django的我来说,tornado实在是很简陋,没有那么多复杂的文件分类. 在tornado中,一个简单web只需要十几行简单的代码就OK了 import tornado.web imp ...
- (一)Maven简介
Maven这个词可以翻译为“知识的积累”,也可以翻译为“专家”或“内行”,是一个跨平台的项目管理工具.Maven主要服务于基于Java平台的项目构建.依赖管理和项目信息管理. 构建(build)是每一 ...
- MySQL----mysql57服务突然不见了的,解决方法
一. G:\MySQL\MySQL Server 5.7\bin>mysqld --initialize G:\MySQL\MySQL Server 5.7\bin>mysqld -ins ...
- mysql练习----Using Null
teacher id dept name phone mobile 101 1 Shrivell 2753 07986 555 1234 102 1 Throd 2754 07122 555 1920 ...
- mysql练习----The JOIN operation
game id mdate stadium team1 team2 1001 8 June 2012 National Stadium, Warsaw POL GRE 1002 8 June 2012 ...
- [20190322]测试相同语句遇到导致cursor pin S的疑问.txt
[20190322]测试相同语句遇到导致cursor pin S的疑问.txt--//昨天测试遇到的情况,链接:http://blog.itpub.net/267265/viewspace-26388 ...
- Linux系统修改日期时间
linux修改时间 服务器时间与网络时间不符: 一.手动修改 1. date命令:查看当前时间 2. date -s 时分秒 :修改时间 还需要把日期改过来 3. date -s 完整日期时间 ...
- ASP.NET中的参数与特殊类型和特性
一.可选参数和命名参数 1.可选参数 语法: [修饰符] 返回类型 方法名(必选参数1...必选参数n,可选参数1...可选参数n) ...
- Win10改AHCI无需重装系统(无需改注册表)的方法
下面就开始:1.开机后按下WIN键 加 R键2.输入 msconfig3.如图中所示进行点击.1 引导界面 2安全引导打钩 .最小打钩 3 下面的确定.4.点击重新启动5.在重启时连续按 F2 进入B ...