Flutter How to Scaffold layout size(错误)

Posted

技术标签:

【中文标题】Flutter How to Scaffold layout size(错误)【英文标题】:Flutter How to Scaffold layout size ( error) 【发布时间】:2022-01-15 10:57:25 【问题描述】:

我还在努力学习 Flutter。

我的主页上有一个按钮,它导航到我的 CustomWidget。 (顺便说一句,它是 StepperWidget)

每当我尝试在我的小部件中添加脚手架时,它都会中断。

并给出此错误消息。 这是我的小部件树 Scaffold --> Container (height and widht) --> SingleChildScrollView ---> Stepper with steps。

我试图移除脚手架。但这一次,每当我单击 textformfield 时,就会出现底部溢出错误。 提前谢谢.. //

这是我的代码;

 return Scaffold(
      body: Container(
        height: 400,
        width: 400,
        color: Colors.red,
        child: SingleChildScrollView(
          child: Stepper(
            currentStep: currentStep,
            onStepTapped: (step) 
              if (step > currentStep) 
                setState(() 
                  currentStep = step;
                );
              
            ,
            onStepContinue: () 
              if (currentStep != 2) 
                setState(() 
                  currentStep += 1;
                );
              
            ,
            onStepCancel: () 
              if (currentStep != 0) 
                setState(() 
                  currentStep -= 1;
                );
              
            ,
            controlsBuilder: (BuildContext context,
                VoidCallback? onStepContinue,
                VoidCallback? onStepCancel,
                VoidCallback? onStepTapped) 
              return Row(
                children: <Widget>[
                  ElevatedButton(
                    onPressed: onStepContinue,
                    child: const Text('ONAYLA'),
                    style: ButtonStyle(
                      backgroundColor:
                          MaterialStateProperty.all(Colors.green[400]),
                    ),
                  ),
                  TextButton(
                    onPressed: onStepCancel,
                    child: const Text('GERİ'),
                  ),
                ],
              );
            ,
            steps: [
              Step(
                title: const Text('baslık'),
                content: TextFormField(
                  controller: _yukBaslikController,
                  cursorColor: ColorConstants.dordunculRenk,
                  decoration: const InputDecoration(
                    enabledBorder: UnderlineInputBorder(
                      borderSide:
                          BorderSide(color: ColorConstants.dordunculRenk),
                    ),
                    focusedBorder: UnderlineInputBorder(
                      borderSide:
                          BorderSide(color: ColorConstants.dordunculRenk),
                    ),
                    /* suffixIcon: Icon(
                                      Icons.insert_drive_file_outlined,
                                      color: ColorConstants.dordunculRenk,
                                    ), */
                    helperText: "orn",
                    helperStyle: TextStyle(
                        fontStyle: FontStyle.italic, color: Colors.black),
                    hintText: "Başlık giriniz",
                    //label: Text("Yükünüz hakkında bilgi giriniz"),
                    //labelStyle: TextStyle(color: ColorConstants.dordunculRenk),
                  ),
                  //controller: _yukTextController,
                ),
              ),
              Step(
                title: const Text('ICERIK'),
                content: TextFormField(
                  controller: _yukIcerikController,
                  cursorColor: ColorConstants.dordunculRenk,
                  decoration: const InputDecoration(
                    enabledBorder: UnderlineInputBorder(
                      borderSide:
                          BorderSide(color: ColorConstants.dordunculRenk),
                    ),
                    focusedBorder: UnderlineInputBorder(
                      borderSide:
                          BorderSide(color: ColorConstants.dordunculRenk),
                    ),
                    /* suffixIcon: Icon(
                                      Icons.insert_drive_file_outlined,
                                      color: ColorConstants.dordunculRenk,
                                    ), */
                    helperText: "orn",
                    helperStyle: TextStyle(
                        fontStyle: FontStyle.italic, color: Colors.black),
                    hintText: "Başlık giriniz",
                
                  ),
                  //controller: _yukTextController,
                ),
              ),
              Step(
                title: Text('bilgi'),
                content: Container(),
              ),
            ],
          ),
        ),
      ),
    );

【问题讨论】:

请发布您当前的代码。 我发布了我的代码。 我刚刚运行它,一切正常,我只需要添加变量,但一切正常,因为你已经声明了当前变量 感谢您的帮助。我想我以后可以解决这个问题哈哈。 【参考方案1】:

放一段代码可以更好的可视化,问题是一个组件不能是另一个的父组件

【讨论】:

我发布了我的代码。

以上是关于Flutter How to Scaffold layout size(错误)的主要内容,如果未能解决你的问题,请参考以下文章

[Scaffold]Flutter中的脚手架

Flutter: How to fix ITMS-90809: Deprecated API Usage - Apple 将停止接受使用 UIWebView API 的应用程序提交

Flutter基础组件03Scaffold

Flutter基础组件03Scaffold

Flutter入门-04 Scaffold

Flutter-Scaffold组件