flutter 如何垂直滚动高行

flutter How to vertically scroll a tall row

我想让以下行可滚动:

Row(
     children: [
       Expanded(
         flex: 1,
         child: timeColumn, // list of times
       ),
       dayColumn("Monday", "03-09-2002"), // monday info, etc.
       dayColumn("Tuesday", "03-10-2002"),
       dayColumn("Wednesday", "03-11-2002"),
       dayColumn("Thursday", "03-12-2002"),
       dayColumn("Friday", "03-13-2002"),
       dayColumn("Saturday", "03-14-2002"),
       dayColumn("Sunday", "03-15-2002"),
     ],
   )

我创建了一个飞镖板来显示这段代码: https://dartpad.dev/16547cbb0f37ac52299c1dd1d11c262e

要查看溢出问题,可以将这部分代码设置为"too large",这会导致底部溢出:

  ///////////////////////////////////////////////////////////
  double rowHeight = 50;  // <-- Change this to set rowHeight
  ///////////////////////////////////////////////////////////

我正在使用行小部件,因为日期和日程安排信息将包含在每天一个对象中,所以我想将数据保留为一行列。 (所以,我认为listView是不可能的)

我尝试使用 SingleChildScrollView( child: Row( .... 但是,我仍然遇到溢出情况。 我觉得现在是使用 LayoutBuilder + BoxConstraints + ConstrainedBox 的好时机,如下所示:

那么,使 "Tall Row" 可滚动的最佳方法是什么?

我只是通过将行放在一个高度有限的容器中来缩短行的高度以检查它的性能并将行放在 SingleChildScrollView 中并且滚动流畅。

           Container(
                height:50,
                child: SingleChildScrollView(
                   child : Row(
                        children: [
                            Expanded(
                              flex: 1,
                              child: timeColumn,
                            ),
                            dayColumn("Monday", "03-09-2002"),
                            dayColumn("Tuesday", "03-10-2002"),
                            dayColumn("Wednesday", "03-11-2002"),
                            dayColumn("Thursday", "03-12-2002"),
                            dayColumn("Friday", "03-13-2002"),
                            dayColumn("Saturday", "03-14-2002"),
                            dayColumn("Sunday", "03-15-2002"),
                          ],
                        )
                     )
                 ),