Flutter 我想在“颤振省道”对话框中显示结果
我有一个名为Flutter 我想在“颤振省道”对话框中显示结果,flutter,dart,dialog,setstate,Flutter,Dart,Dialog,Setstate,我有一个名为'doaddition'的SetState函数,用于计算值的miduiom'和 我有一个按钮,当我点击按钮时,我想显示一个对话框,在这个对话框中我想显示'sum' ps:我想创建多个对话框,按钮根据'sum' 如果总和==0,则显示第一个对话框 否则,如果sum>10显示第二个对话框 否则显示第三个对话框 每个对话框都有自己的文本 和“sum”的结果导入“包:flift/material.dart”; import 'package:flutter/material.dart';
'doaddition'
的SetState
函数,用于计算值的miduiom'和
我有一个按钮,当我点击按钮时,我想显示一个对话框,在这个对话框中我想显示'sum'
ps:我想创建多个对话框,按钮根据'sum'
如果总和
==0,则显示第一个对话框
否则,如果sum
>10显示第二个对话框
否则显示第三个对话框
每个对话框都有自己的文本
和“sum”的结果导入“包:flift/material.dart”;
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
// This widget is the root of your application.
@override
Widget build(BuildContext context) {
return MaterialApp(
title: 'Flutter Demo',
theme: ThemeData(
primarySwatch: Colors.blue,
visualDensity: VisualDensity.adaptivePlatformDensity,
),
home: MyHomePage(),
);
}
}
class MyHomePage extends StatefulWidget {
@override
_MyHomePageState createState() => _MyHomePageState();
}
class _MyHomePageState extends State<MyHomePage> {
var sum = 0;
void doAddition() {
setState(() {
sum = 15;
});
}
@override
Widget build(BuildContext context) {
return Scaffold(
body: Center(
child: FlatButton(
child: Container(
height: 30,
width: 90,
color: Colors.blue,
child: Center(child: Text("Display"))),
onPressed: () {
doAddition();
if (sum < 10) {
showDialog(
context: context,
builder: (context) {
return Dialog(
child: Container(
height: 150,
child: Column(
children: <Widget>[
Text("Sum less than 10"),
Text("sum = " + sum.toString()),
],
),
),
);
});
} else if (sum > 10 && sum < 20) {
showDialog(
context: context,
builder: (context) {
return Dialog(
child: Container(
height: 150,
child: Column(
children: <Widget>[
Text("Sum greater than 10 but less than 20"),
Text("sum = " + sum.toString()),
],
),
),
);
});
} else if (sum > 20 && sum < 30) {
showDialog(
context: context,
builder: (context) {
return Dialog(
child: Container(
height: 150,
child: Column(
children: <Widget>[
Text("Sum greater than 20 but less than 30"),
Text("sum = " + sum.toString()),
],
),
),
);
});
} else {
showDialog(
context: context,
builder: (context) {
return Dialog(
child: Container(
height: 150,
child: Column(
children: <Widget>[
Text("Sum greater than 30"),
Text("sum = " + sum.toString()),
],
),
),
);
});
}
},
),
),
);
}
}
void main(){
runApp(MyApp());
}
类MyApp扩展了无状态小部件{
//此小部件是应用程序的根。
@凌驾
小部件构建(构建上下文){
返回材料PP(
标题:“颤振演示”,
主题:主题数据(
主样本:颜色。蓝色,
视觉密度:视觉密度。自适应平台密度,
),
主页:MyHomePage(),
);
}
}
类MyHomePage扩展StatefulWidget{
@凌驾
_MyHomePageState createState()=>\u MyHomePageState();
}
类_MyHomePageState扩展状态{
var总和=0;
无效doAddition(){
设置状态(){
总和=15;
});
}
@凌驾
小部件构建(构建上下文){
返回脚手架(
正文:中(
孩子:扁平按钮(
子:容器(
身高:30,
宽度:90,
颜色:颜色,蓝色,
子对象:居中(子对象:文本(“显示”)),
已按下:(){
doAddition();
如果(总和<10){
显示对话框(
上下文:上下文,
生成器:(上下文){
返回对话框(
子:容器(
身高:150,
子:列(
儿童:[
文本(“总和小于10”),
文本(“sum=“+sum.toString()),
],
),
),
);
});
}否则如果(总和>10和总和<20){
显示对话框(
上下文:上下文,
生成器:(上下文){
返回对话框(
子:容器(
身高:150,
子:列(
儿童:[
文本(“总和大于10但小于20”),
文本(“sum=“+sum.toString()),
],
),
),
);
});
}否则如果(总和>20和总和<30){
显示对话框(
上下文:上下文,
生成器:(上下文){
返回对话框(
子:容器(
身高:150,
子:列(
儿童:[
文本(“总和大于20但小于30”),
文本(“sum=“+sum.toString()),
],
),
),
);
});
}否则{
显示对话框(
上下文:上下文,
生成器:(上下文){
返回对话框(
子:容器(
身高:150,
子:列(
儿童:[
文本(“总和大于30”),
文本(“sum=“+sum.toString()),
],
),
),
);
});
}
},
),
),
);
}
}
你好。你应该添加更多的细节,说明你到目前为止尝试了什么,以及你在哪里遇到了困难。在帖子中添加更多代码。