scrollable_clean_calendar 1.0.0 scrollable_clean_calendar: ^1.0.0 copied to clipboard
A clean calendar widget with vertical scroll, locale, and range selection date
Scrollable Clean Calendar #
A clean calendar widget with vertical scroll, locale and range selection date.
Contributors #
Rodrigo Dobbin Fellows |
Eduardo Natale |
Fabio Fiuza |
Filippo Pizzicola |
Lucian Risso Correia |
Installation #
Add
scrollable_clean_calendar: 1.0.0
to your pubspec.yaml
and run
flutter pub get
in the project's main folder.
Parameters #
ScrollableCleanCalendar #
Parameter | Type | Default | Description |
---|---|---|---|
calendarController | CleanCalendarController | required | The controller of ScrollableCleanCalendar |
locale | String | en | The language locale |
scrollController | ScrollController | null | Scroll controller |
showWeekdays | bool | true | If is to show or not the weekdays in calendar |
layout | Layout | null | What layout (design) is going to be used. Important: layout is required if you don't use all the layout builders |
spaceBetweenMonthAndCalendar | double | 24 | The space between month and calendar |
spaceBetweenCalendars | double | 24 | The space between calendars |
calendarCrossAxisSpacing | double | 4 | The horizontal space in the calendar dates |
calendarMainAxisSpacing | double | 4 | The vertical space in the calendar dates |
padding | EdgeInsetsGeometry | EdgeInsets.symmetric(horizontal: 16, vertical: 32) | The parent padding |
monthTextStyle | TextStyle | Theme.of(context).textTheme.headline6 | The label text style of month |
monthTextAlign | TextAlign | TextAlign.left | The label text align of month |
weekdayTextStyle | TextStyle | Theme.of(context).textTheme.bodyText1 | The label text align of month |
dayTextStyle | TextStyle | Theme.of(context).textTheme.bodyText1 | The label text style of day |
daySelectedBackgroundColor | Color | Theme.of(context).colorScheme.primary | The day selected background color |
dayBackgroundColor | Color | Theme.of(context).colorScheme.surface | The day background color |
daySelectedBackgroundColorBetween | Color | Theme.of(context).colorScheme.primary.withOpacity(.3) | The day selected background color that is between day selected edges |
dayDisableBackgroundColor | Color | Theme.of(context).colorScheme.surface.withOpacity(.4) | The day disable background color |
dayRadius | double | 6 | The radius of day items |
monthBuilder | Widget Function(BuildContext context, String month) | null | A builder to make a customized month |
weekdayBuilder | Widget Function(BuildContext context, String weekday) | null | A builder to make a customized weekday |
dayBuilder | Widget Function(BuildContext context, DayValues values) | null | A builder to make a customized day of calendar |
CleanCalendarController #
Parameter | Type | Default | Description |
---|---|---|---|
minDate | DateTime | required | Obrigatory: The mininimum date to show |
maxDate | DateTime | required | Obrigatory: The maximum date to show |
initialDateSelected | DateTime | null | An initial selected date |
endDateSelected | DateTime | null | The end of selected range |
weekdayStart | int | DateTime.monday | In what weekday position the calendar is going to start |
onDayTapped | Function(DateTime date) | null | Function when a day is tapped |
onRangeSelected | Function(DateTime minDate, DateTime? maxDate) | null | Function when a range is selected |
onPreviousMinDateTapped | Function(DateTime date) | null | When a date before the min date is tapped |
onAfterMaxDateTapped | Function(DateTime date) | null | When a date after max date is tapped |
rangeMode | bool | true | If the range is enabled |
Layout.DEFAULT #
ScrollableCleanCalendar(
calendarController: calendarController,
layout: Layout.DEFAULT,
),
Layout.BEAUTY #
ScrollableCleanCalendar(
calendarController: calendarController,
layout: Layout.BEAUTY,
calendarCrossAxisSpacing: 0,
),