要解决标记物不显示在table_calendar小部件中的问题,可以按照以下步骤进行操作:
import 'package:flutter/material.dart';
import 'package:table_calendar/table_calendar.dart';
Map>
类型的变量,用于存储每个日期的标记物列表:Map> _events = {};
initState
方法中初始化并设置标记物:@override
void initState() {
super.initState();
_events = {
DateTime.now(): ['Event 1', 'Event 2'], // 设置标记物
};
}
EventListBuilder
小部件,用于构建每个日期下的标记物列表:class EventListBuilder extends StatelessWidget {
final DateTime date;
const EventListBuilder({
Key key,
@required this.date,
}) : super(key: key);
@override
Widget build(BuildContext context) {
return ListView.builder(
itemCount: _events[date].length,
itemBuilder: (context, index) {
return ListTile(
title: Text(_events[date][index].toString()),
);
},
);
}
}
TableCalendar
小部件中,使用eventLoader
属性来加载每个日期下的标记物列表:TableCalendar(
events: _events,
eventLoader: (date) {
return EventListBuilder(date: date);
},
),
通过以上步骤,你可以将标记物显示在table_calendar小部件中。每个日期下的标记物将通过EventListBuilder
小部件进行构建和展示。
上一篇:标记文本(类似于标记方程式)
下一篇:标记线不工作,而标记圆圈工作