Flutter 我无法在Flatter上创建SingleChildScrollView屏幕

Flutter 我无法在Flatter上创建SingleChildScrollView屏幕,flutter,dart,Flutter,Dart,我试图创建一个可滚动屏幕,不是内部的小部件,而是flift上的整个屏幕,但我遇到了如下错误: =====================================================================渲染库捕获的异常未布局RenderBox:RenderFlex#f643b relayoutBoundary=up13 NEEDS-PAINT 需要-合成-比特-更新 “package:flatter/src/rendering/box.dart”:失败的断言:第19

我试图创建一个可滚动屏幕不是内部的小部件,而是flift上的整个屏幕,但我遇到了如下错误:

=====================================================================渲染库捕获的异常未布局RenderBox:RenderFlex#f643b relayoutBoundary=up13 NEEDS-PAINT 需要-合成-比特-更新 “package:flatter/src/rendering/box.dart”:失败的断言:第1920行 位置12:“hasSize”导致错误的相关小部件是:
SingleChildScrollView

以下是所示窗口小部件之一的代码:

var _settingsPage = StatefulBuilder(
      builder: (BuildContext context, StateSetter setState) {
        return Scaffold(
          body: Row(
            children: [
              Flexible(
                child: Column(
                  mainAxisSize: MainAxisSize.min,
                  children: [
                    SingleChildScrollView(
                      scrollDirection: Axis.vertical,
                      child: Column(
                        mainAxisAlignment: MainAxisAlignment.center,
                        mainAxisSize: MainAxisSize.min,
                        crossAxisAlignment: CrossAxisAlignment.center,
                        children: [
                          Row(
                            children: [
                              FloatingActionButton(
                                child: Icon(Icons.casino),
                                onPressed: changeHome,
                              ),
                            ],
                          ),
                          Flexible(
                            fit: FlexFit.loose,
                            child: SingleChildScrollView(
                              scrollDirection: Axis.vertical,
                              child: Text(
                                _helpString,
                                textAlign: TextAlign.center,
                              ),
                            ),
                          ),
                          Container(
                            alignment: Alignment.center,
                            padding: EdgeInsets.fromLTRB(10, 10, 10, 10),
                            child: Row(
                              mainAxisAlignment: MainAxisAlignment.center,
                              children: [
                                const Text('Is your character epic?'),
                                Checkbox(
                                  value: _epic,
                                  onChanged: (bool epic) {
                                    setState(
                                      () {
                                        _epic = epic;
                                      },
                                    );
                                  },
                                ),
                              ],
                            ),
                          ),
                        ],
                      ),
                    ),
                  ],
                ),
              ),
            ],
          ),
        );
      },
    );

尝试将
SingleChildScrollView
包装在一个
SizedBox
中,并定义高度和宽度

这将确保将视图构造为定义的空间

要将SizedBox高度设置为屏幕高度,可以使用媒体查询,如
MediaQuery.of(context).size.height
并且您可以将
height
替换为
width
以将小部件大小设置为屏幕宽度

如果问题仍然存在,请随时发表评论 当做
Rachan

您是否尝试过将
SingleChildScrollView
包装在
扩展的
小部件中?或者尝试将SingleChildScrollView放在列上方