我正在制作一个自定义窗口小部件,用于显示每周时间表。我希望它看起来像一张普通表,标题中的天数和垂直轴上的时间。然后,我想在日历中添加事件,但是由于一个事件可以跨越多个单元格,因此我无法使用内置表(它没有列/行跨度)。
因此,我开始使用CustomPaint制作自己的表。一切顺利,直到我到达标题部分为止,这个想法我一直停留在布局上。在我提供的代码中,您可以看到页眉的宽度与侧栏(随时间)和WeekView(WeekView)(CustomPaint表)的宽度相同。这意味着我不知道如何将标题(星期一,星期二等)与WeekView中的网格对齐,因为边栏占用的空间未知。正如我希望边栏随表格滚动一样,它必须在scrollview中。我可以用其他方法解决吗?也许还有条子(我还不知道)?
@override
Widget build(BuildContext context) {
return Column(
children: <Widget>[
WeekSelector(
week: controller.week,
onPrevPressed: onPrevPressed,
onNextPressed: onNextPressed,
),
WeekHeader(),
Expanded(
child: SingleChildScrollView(
scrollDirection: Axis.vertical,
child: Container(
child: Row(
children: <Widget>[
Text("09:00"), // here will be a bar for the time
Expanded(
child: WeekView(
startHour: 9,
endHour: 18,
),
),
],
),
),
),
),
],
);
}