Renderflex溢出-如何克服抖动?

问题描述 投票:0回答:1

我知道我会对这个问题有很多否定的评论,但是我感到非常沮丧。我在新的iPhone 11pro上测试了我的应用程序,现在出现很多renderflex错误。大家都知道错误日志-甚至Google也给您一些建议,例如“您是否考虑过使用Flex或Expanded parent?”

现在,对于过去的文本小部件,我使用扩展。 ..那太好了。太好了!我只是将我的文本包装在Expanded中,然后将其“包装”在文本中,使其适合其容器。

但是包装其他小部件(如行或列或singlechildscrollviews相当于什么?

我试图将它们包装在扩展中,并且得到相同的错误消息。

我受够了。

这里是一些代码的示例:

            Container(
             // width: MediaQuery.of(context).size.width,
             // height: MediaQuery.of(context).size.height,


              //TODO: checkboxes

              child: Center(
                child: Column(
                // mainAxisSize: MainAxisSize.max,
                  mainAxisAlignment: MainAxisAlignment.center,
                  children: <Widget>[
                    Container(width: 200,height: 100,
                      child: Row(
                        mainAxisSize: MainAxisSize.max,
                        mainAxisAlignment: MainAxisAlignment.spaceBetween,
                        children: <Widget>[
                          checkbox(sun, days[sun]),
                          checkbox(mon, days[mon]),
                          checkbox(tue, days[tue]),
                          checkbox(wed, days[wed]),
                          checkbox(thu, days[thu]),
                          checkbox(fri, days[fri]),
                          checkbox(sat, days[sat]),

                        ],
                      ),
                    ),
                  ],
                ),
              )
          ),
flutter dart flutter-layout
1个回答
0
投票

方法1:使用ListView

        child: Container(
          child: Center(
            child: Column(
              mainAxisAlignment: MainAxisAlignment.center,
              children: <Widget>[
                Container(
                  width: 200,
                  height: 100,
                  child: ListView(
                    scrollDirection: Axis.horizontal,
                    children: <Widget>[
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                      SizedBox(width: 10),
                      Text("Example"),
                    ],
                  ),
                ),
              ],
            ),
          ),
         ),

enter image description here

方法2:如果要显示该子级中的所有项目,可以使用Wrap而不是ListView

© www.soinside.com 2019 - 2024. All rights reserved.