日历
显示事件的滚动日历列表。这仍然相对基础,它总是假设 getEvents 返回整个日历事件列表(基本上忽略了传递给源的值)。但它确实有效?您可以选择使用一张图片作为日历标题的背景,以及另一张图片作为月份标题。
日历使用 slivers 在视图中显示小部件,并允许您向前和向后滚动浏览事件。标题小部件会下拉并展开月份,让您选择特定日期以及在月份之间来回移动。默认情况下,它显示事件列表而不是日视图,日视图代码目前只是一个存根。
如何使用日历小部件本身
new CalendarWidget(
initialDate: new TZDateTime.now(local),
buildItem: buildItem,
getEvents: getEvents,
);
如何为日历小部件设置源。
...
List<Game> _listToShow;
StreamSubscription<UpdateReason> _listening;
@override
Widget buildItem(BuildContext context, CalendarEvent event) {
return new GameCard(_listToShow[event.index]);
}
@override
List<CalendarEvent> getEvents(DateTime start, DateTime end) {
if (_listToShow == null) {
_listToShow = UserDatabaseData.instance.games.values.toList();
}
if (_listToShow == null) {
return [];
}
List<CalendarEvent> events = new List<CalendarEvent>();
int pos = 0;
_listToShow.forEach((Game g) => events.add(new CalendarEvent(
instant: g.tzTime, instantEnd: g.tzEndTime, index: pos++)));
return events;
}
...
入门
有关 Flutter 入门指南,请参阅我们的在线 文档。
有关编辑包代码的帮助,请参阅 文档。
