我想使以下行可滚动:
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"),
],
)
并且我创建了一个dartpad来显示实际的代码:https://dartpad.dev/16547cbb0f37ac52299c1dd1d11c262e
要查看溢出问题,您可以将代码的这一部分设置为“太大”,从而在底部导致溢出:
///////////////////////////////////////////////////////////
double rowHeight = 50; // <-- Change this to set rowHeight
///////////////////////////////////////////////////////////
我使用的是行小部件,因为日期和日程安排信息每天将包含在一个对象中,所以我想将数据保留为一行列。 (所以,我认为listView是不可能的)
我尝试使用SingleChildScrollView(child:Row(....但是,我仍然遇到溢出情况。我觉得这是使用LayoutBuilder + BoxConstraints + ConstrainedBox的好时机,如下所示:How to scroll page in flutter
所以,使“高行”可滚动的最佳方法是什么?
我只是通过将行放在有限高度的容器中以检查其性能并将行放在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"),
],
)
)
),