zsh_calendar 日历组件,支持周日切换,支持滑动收缩,支持上下页跳转,支持跳到某个日期,支持边界效果, 日历中每个日期、周的widget都可自定义
效果
可高度自定义的日历,日历中每个日期、周都可以自定义样式,
实现了
- 项目1跳转到某个日期功能,
- 上下月跳转功能
- 左右滑动切换功能
- 周日历和月日历切换功能
- 上下滑动收缩功能
效果1:
效果2:
使用方法
导入文件
方式1: 将代码下载下来,将里面的lib/src下的文件夹导入到自己的项目中
方式2: pubspec.yaml 添加
dependencies:
zsh_calendar: ^0.0.1
然后控制台执行: flutter pub get 既可
使用
在要使用zsh_calendar的地方写:
import 'package:zsh_calendar/zsh_calendar.dart';
带收缩日历用CalendarSliverDelegate,他是SliverPersistentHeader的代理,外层用CustomScrollView包裹,
如下:
CustomScrollView(
slivers: [
Consumer<MedicHistoryProvider>(
builder: (context, MedicHistoryProvider counter, _) {
return SliverPersistentHeader(
delegate: CalendarSliverDelegate(
startTime: DateTime(2020, 2, 3),
endTime: DateTime(2021, 2, 3),
currentPageTime: counter.firstCurrentPageTime,
calendarController: _calendarController,
weekdayHeader: CalendarWeekday(