溢出的 RenderFlex 的方向为 Axis.vertical

17 dart flutter

我无法在表单上滚动,如何解决滚动问题:下面的代码和错误。

\n

来自终端的错误:\n\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\ xe2\x95\x90 渲染库捕获异常 \xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95 \x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90 \xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2 \x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95\x90\xe2\x95 \x90\xe2\x95\x90\n布局期间抛出以下断言:\nRenderFlex 底部溢出 179 像素。

\n

导致错误的相关小部件为\nColumn\nlib\\auth\\signupBasicDetails.dart:254\n溢出的 RenderFlex 的方向为 Axis.vertical。\n溢出的 RenderFlex 的边缘已在渲染中用黄色和黑色条纹图案。这通常是由于内容对于 RenderFlex 来说太大造成的。

\n

考虑应用弹性因子(例如使用 Expanded widget)来强制 RenderFlex 的子级适应可用空间,而不是调整其自然大小。\n这被视为错误情况,因为它表明存在无法容纳的内容。可见。如果内容确实大于可用空间,请考虑在将其放入 Flex 之前使用 ClipRect 小部件对其进行剪辑,或者使用可滚动容器而不是 Flex,例如 ListView。

\n

有问题的具体 RenderFlex 是:RenderFlex#d8c43 relayoutBoundary=up2 OVERFLOWING

\n
Widget build(BuildContext context) {\nreturn Scaffold(\n  resizeToAvoidBottomInset: false,\n  backgroundColor: Colors.white,\n  body: Container(\n    width: MediaQuery.of(context).size.width,\n    //color: Colors.red,\n    \n    child: Column(\n      mainAxisAlignment: MainAxisAlignment.center,\n      crossAxisAlignment: CrossAxisAlignment.start,\n      children: [\n        Container(\n          // padding: EdgeInsets.all(10),\n          padding: EdgeInsets.only(left: 20, top: 60),\n          child: GestureDetector(\n            onTap: () {\n              if (pageController.page == 0) {\n                Navigator.pop(context);\n              } else {\n                setState(() {\n                  if (fourthPage) {\n                    nextButtonText = "Next";\n                    fourthPage = false;\n                  } else if (thirdPage) {\n                    thirdPage = false;\n                  } else if (secondPage) {\n                    secondPage = false;\n                  }\n                });\n                pageController.previousPage(\n                    duration: Duration(milliseconds: 200),\n                    curve: Curves.easeIn);\n              }\n            },\n            child: Icon(\n              Icons.arrow_back,\n            ),\n          ),\n        ),\n        SizedBox(\n          height: 0.5,\n        ),\n        Container(\n          alignment: Alignment.topCenter,\n          height: 130,\n          child: Image.asset(\n            'images/1.jpg',\n            fit: BoxFit.contain,\n          ),\n        ),\n        Container(\n          alignment: Alignment.topCenter,\n          child: Text("App",\n              style: TextStyle(\n                fontFamily: "Source Sans Pro Regular",\n                color: Colors.black,\n                fontSize: 40,\n              )),\n        ),\n        Padding(\n          padding: const EdgeInsets.symmetric(vertical: 20),\n          child: Row(\n            mainAxisAlignment: MainAxisAlignment.center,\n            children: [\n              Container(\n                height: 15,\n                width: 15,\n                decoration: BoxDecoration(\n                    shape: BoxShape.circle,\n                    color: redColor,\n                    border: Border.all(color:redColor)),\n              ),\n              Padding(\n                padding: const EdgeInsets.symmetric(horizontal: 5),\n                child: Text(\n                  "-",\n                  style: TextStyle(\n                      fontFamily: "Montserrat Regular",\n                      fontSize: 22,\n                      color:\n                          secondPage ? redColor : greyColor),\n                ),\n              ),\n              Container(\n                height: 15,\n                width: 15,\n                decoration: BoxDecoration(\n                    shape: BoxShape.circle,\n                    color: secondPage ? redColor : Colors.white,\n                    border: Border.all(\n                        color: secondPage\n                            ? redColor\n                            : greyColor)),\n              ),\n              Padding(\n                padding: const EdgeInsets.symmetric(horizontal: 5),\n                child: Text(\n                  "-",\n                  style: TextStyle(\n                      fontFamily: "Montserrat Regular",\n                      fontSize: 22,\n                      color:\n                          thirdPage ? redColor : greyColor),\n                ),\n              ),\n              Container(\n                height: 15,\n                width: 15,\n                decoration: BoxDecoration(\n                    shape: BoxShape.circle,\n                    color: thirdPage ? redColor : Colors.white,\n                    border: Border.all(\n                        color: thirdPage\n                            ? redColor\n                            : greyColor)),\n              ),\n              Padding(\n                padding: const EdgeInsets.symmetric(horizontal: 5),\n                child: Text(\n                  "-",\n                  style: TextStyle(\n                      fontFamily: "Montserrat Regular",\n                      fontSize: 22,\n                      color:\n                          fourthPage ? redColor : greyColor),\n                ),\n              ),\n              Container(\n                height: 15,\n                width: 15,\n                decoration: BoxDecoration(\n                    color: fourthPage ? redColor : Colors.white,\n                    shape: BoxShape.circle,\n                    border: Border.all(\n                        color: fourthPage\n                            ? redColor\n                            : greyColor)),\n              ),\n            ],\n          ),\n        ),\n        SizedBox(\n          height: 10,\n        ),\n        Container(\n          height: 380,\n          child: PageView(\n            physics: NeverScrollableScrollPhysics(),\n            controller: pageController,\n            children: [\n              FirstPageSignUp(),\n              SecondPageSignUp(),\n              ThirdPageSignUp(),\n              FourthPageSignUp()\n            ],\n          ),\n        ),\n        SizedBox(\n          height: 1,\n        ),\n        Center(\n          child: FlatButton(\n            color: Color(0xffD21F3C),\n            onPressed: () {\n              setState(() {\n                if (pageController.page == 0 &&\n                    _formkey1.currentState.validate()) {\n                  ....\n                } else if (pageController.page == 1 &&\n                    _formkey2.currentState.validate()) {\n                  ...\n                } else if (pageController.page == 2 &&\n                    _formkey3.currentState.validate()) {\n                  ...\n                } else if (pageController.page == 3 &&\n                    _formkey4.currentState.validate()) {\n                  ...\n                  if (vendordropdown == "...") {\n                    ...\n                  } else if (vendordropdown == "...") {\n                    ...\n                  } else if (vendordropdown == "...") {\n                    ...\n                  }\n                  attemptSignUp(\n                      ....);\n                }\n              });\n            },\n            shape: new RoundedRectangleBorder(\n                borderRadius: new BorderRadius.circular(4),\n                side: BorderSide(color: Color(0xffD21F3C))),\n            textColor: Colors.white,\n            child: Container(\n                height: 45,\n                width: 200,\n                child: Row(\n                  mainAxisAlignment: MainAxisAlignment.center,\n                  children: [\n                    Text(\n                      nextButtonText,\n                      style: new TextStyle(\n                          color: Colors.white,\n                          fontFamily: "Montserrat SemiBold",\n                          fontSize: 18),\n                    ),\n                    Icon(Icons.arrow_forward, color: Colors.white)\n                  ],\n                )),\n          ),\n        ),\n      ],\n    ),\n  ),\n);\n
Run Code Online (Sandbox Code Playgroud)\n

}\n}

\n

小智 57

您可以用 包裹column起来SingleChildScrollView

SingleChildScrollView(
    child: Column(
      ...
    ),
),
Run Code Online (Sandbox Code Playgroud)