Flutter table_calendar 在范围模式下跳过开始日期之后的数据

Flutter table_calendar skips a data after start date when in range mode

提问人:Amey 提问时间:8/8/2023 更新时间:8/8/2023 访问量:61

问:

以下是表格日历小部件的代码:

              TableCalendar(
                firstDay: DateTime.now(),
                lastDay: DateTime.now().add(const Duration(days: 365)),
                focusedDay: calendarController.selectedDate.value,
                selectedDayPredicate: (day) {
                  return isSameDay(calendarController.selectedDate.value, day);
                },
                onDaySelected: calendarController.onDaySelected,
                rangeStartDay: DateTime.now().add(const Duration(days: 6)),
                rangeEndDay: DateTime.now().add(const Duration(days: 9)),
                rangeSelectionMode: RangeSelectionMode.toggledOn,
                calendarFormat: CalendarFormat.month,
                eventLoader: (date) =>
                    calendarController.getEventsForDate(date),
                calendarStyle: const CalendarStyle(
                  todayDecoration: BoxDecoration(
                    // color: Colors.blueAccent,
                    shape: BoxShape.circle,
                  ),
                  selectedDecoration: BoxDecoration(
                    color: Colors.blue,
                    shape: BoxShape.circle,
                  ),
                ),
                daysOfWeekStyle: const DaysOfWeekStyle(
                    // weekendStyle: TextStyle(color: Colors.red),
                    ),
              ),

这是控制器的代码

class CalendarController extends GetxController {
  Rx<DateTime> selectedDate = DateTime.now().obs;
  int highlightDays = 7;

  void onDaySelected(DateTime selectedDate, DateTime focusedDay) {
    this.selectedDate.value = selectedDate;
    update();
  }

  List<String> getEventsForDate(DateTime date) {
    return ["A", "B"];
  }
}

由于某种奇怪的原因,该表以扭曲的方式显示突出显示的日期范围。始终跳过范围开始日期之后的第一个日期,然后选择最后一个范围日期之后的一天。

这是它的样子:

enter image description here

2 个问题:

  1. 如何让它看起来像日历上的连续范围而没有跳过日期
  2. 允许用户单击某个日期,并向该单击的日期添加固定数量的日期
Android Flutter 飞镖 日期时间 表-日历

评论


答: 暂无答案