Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Flutter 我想在“颤振省道”对话框中显示结果_Flutter_Dart_Dialog_Setstate - Fatal编程技术网

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()), ], ), ), ); }); } }, ), ), ); } }
你好。你应该添加更多的细节,说明你到目前为止尝试了什么,以及你在哪里遇到了困难。在帖子中添加更多代码。