我正在使用plugin calendar。单击日期应在单击日期上向日历添加一个图标,然后将日期保存到Firestore。该插件有一个类型为EventList<Event>
的对象,名为_markedDateMap
,其中日期为地图的key
。我可以使用CalendarCarousel<Event>
小部件的onDayPressed属性将图标成功添加到日历中。我尚未实现将DateTime对象保存到Firestore。首先,我要做的是保留日期(此刻按“后退”按钮并返回将清除所有选定的日期)。这必须使用setState()在initState
方法中完成吗?我正在努力将日期添加到地图上,以便它可以保存选定的日期。在给定的plugin示例中使用了以上所有方法和映射。日期需要存储在Firestore中的数组中。在我的Firestore中
AuthProvider.of(context).userData.availableDates
可用日期是一个数组。
这是我的onDayPressed
onDayPressed: (DateTime date, List<Event> events) {
_currentDate=date;
if (!_markedDateMap.events.containsKey(date)) {
_markedDateMap.add(date,Event(date: date,title: 'Event',icon: _eventIcon));
}else{
_markedDateMap.remove(date,Event(date: date,title: 'Event',icon: _eventIcon));
print('removed + $_markedDateMap');
;
}
},