Flutter 之 table_calendar 控件

1.库导入

在pubspec.yaml文件中

dev_dependencies:

table_calendar: ^3.2.0

  1. 代码编写
Kotlin 复制代码
TableCalendar(
  daysOfWeekHeight: 20,
  availableGestures: AvailableGestures.horizontalSwipe,
  firstDay:  DateTime.now().subtract(const Duration(days: 365)),
  lastDay:  DateTime.now(),
  calendarBuilders: CalendarBuilders(

    markerBuilder: (context, day, events) {
      bool isMarker = false;
      for(int i in entries){
        if(day.day == i){
          isMarker = true;
          break;
        }
      }
      if(isMarker){
        return Positioned(
            right: 0,
            top: 0,
            child: Container(
              padding: const EdgeInsets.all(4),
              decoration: BoxDecoration(
                color: Colors.red,
                shape: BoxShape.circle,
              ),
            )
        );
      } else {
        return null;
      }

    }

  ),
  focusedDay: _focusedDay,
  onDaySelected: (selectedDay, focusedDay) {
    setState(() {
      _selectedDay = selectedDay;
      _focusedDay = focusedDay;
    });
  },
  onFormatChanged: (format) {
    setState(() {
      _calendarFormat = format;
    });
  },
  calendarStyle: const CalendarStyle(
    selectedDecoration: BoxDecoration(
      color: Colors.blue,
      shape: BoxShape.circle,
    ),
    todayDecoration: BoxDecoration(
      color: Color(0xFFBBDEFB),
      shape: BoxShape.circle,
    ),
    markersMaxCount: 1,
    isTodayHighlighted: false,
  ),
  headerStyle: const HeaderStyle(
    titleCentered: true,
    formatButtonVisible: false,
  ),
)

3.效果图

相关推荐
古希腊被code拿捏的神7 小时前
【Flutter】面试记录
flutter·面试·职场和发展
0wioiw07 小时前
Flutter基础(前端教程⑨-图片)
前端·flutter
Engandend8 小时前
Flutter与iOS混合开发交互
flutter·ios·程序员
浅忆无痕9 小时前
Flutter抓包
前端·flutter
火柴就是我9 小时前
每日见闻之尝试大白话说清Flutter的事件传递
flutter
Lucifer晓10 小时前
记录一次Flutter项目上传App Store Connect出现“Validation failed”错误的问题
flutter·ios
江上清风山间明月13 小时前
一周掌握Flutter开发--10. 结构与设计模式
flutter·设计模式·快速
_小猪睡枕头_15 小时前
鸿蒙与Flutter的混合开发
flutter·harmonyos
0wioiw016 小时前
Flutter基础(前端教程⑦-Http和卡片)
前端·flutter·http