scrollable_clean_calendar 1.4.0 icon indicating copy to clipboard operation
scrollable_clean_calendar: ^1.4.0 copied to clipboard

A clean calendar widget with vertical scroll, locale, and range selection date

Pub GitHub contributors

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.4.0

to your pubspec.yaml and run

flutter pub get

in the project's main folder.

Parameters #

ScrollableCleanCalendar #

ParameterTypeDefaultDescription
calendarControllerCleanCalendarControllerrequiredThe controller of ScrollableCleanCalendar
localeStringenThe language locale
scrollControllerScrollControllernullScroll controller, if you use this controller the Parameter initialFocusDate and the Functions scrollToMonth and jumpToMonth won't work since this override the scrollable list controller. Do not use them together or you will receive a nullPointer Exception
showWeekdaysbooltrueIf is to show or not the weekdays in calendar
layoutLayoutnullWhat layout (design) is going to be used. Important: layout is required if you don't use all the layout builders
spaceBetweenMonthAndCalendardouble24The space between month and calendar
spaceBetweenCalendarsdouble24The space between calendars
initialFocusDateDateTimenullInitial date that the calendar scroll should focus when open
scrollToMonthFunction({required DateTime date, double alignment = 0, required Duration duration, Curve curve = Curves.linear, List<double> opacityAnimationWeights = const [40, 20, 40]})nullAnimate the list over duration using the given curve such that the item at index ends up with its leading edge at the given alignment.
jumpToMonthFunction ({required DateTime date, double alignment = 0})nullImmediately, without animation, reconfigure the list so that the item at index's leading edge is at the given alignment.
calendarCrossAxisSpacingdouble4The horizontal space in the calendar dates
calendarMainAxisSpacingdouble4The vertical space in the calendar dates
paddingEdgeInsetsGeometryEdgeInsets.symmetric(horizontal: 16, vertical: 32)The parent padding
monthTextStyleTextStyleTheme.of(context).textTheme.headline6The label text style of month
monthTextAlignTextAlignTextAlign.leftThe label text align of month
weekdayTextStyleTextStyleTheme.of(context).textTheme.bodyText1The label text align of month
dayTextStyleTextStyleTheme.of(context).textTheme.bodyText1The label text style of day
daySelectedBackgroundColorColorTheme.of(context).colorScheme.primaryThe day selected background color
dayBackgroundColorColorTheme.of(context).colorScheme.surfaceThe day background color
daySelectedBackgroundColorBetweenColorTheme.of(context).colorScheme.primary.withOpacity(.3)The day selected background color that is between day selected edges
dayDisableBackgroundColorColorTheme.of(context).colorScheme.surface.withOpacity(.4)The day disable background color
dayDisableColorColorTheme.of(context).colorScheme.onSurface.withOpacity(.5)The day disable color
dayRadiusdouble6The radius of day items
monthBuilderWidget Function(BuildContext context, String month)nullA builder to make a customized month
weekdayBuilderWidget Function(BuildContext context, String weekday)nullA builder to make a customized weekday
dayBuilderWidget Function(BuildContext context, DayValues values)nullA builder to make a customized day of calendar

CleanCalendarController #

ParameterTypeDefaultDescription
minDateDateTimerequiredObrigatory: The mininimum date to show
maxDateDateTimerequiredObrigatory: The maximum date to show
initialDateSelectedDateTimenullAn initial selected date
endDateSelectedDateTimenullThe end of selected range
weekdayStartintDateTime.mondayIn what weekday position the calendar is going to start
onDayTappedFunction(DateTime date)nullFunction when a day is tapped
onRangeSelectedFunction(DateTime minDate, DateTime? maxDate)nullFunction when a range is selected
onPreviousMinDateTappedFunction(DateTime date)nullWhen a date before the min date is tapped
onAfterMaxDateTappedFunction(DateTime date)nullWhen a date after max date is tapped
rangeModebooltrueIf the range is enabled
readOnlyboolfalseIf the Calendar Widget is on read-only mode

Layout.DEFAULT #

ScrollableCleanCalendar(
  calendarController: calendarController,
  layout: Layout.DEFAULT,
),

Layout.BEAUTY #

ScrollableCleanCalendar(
  calendarController: calendarController,
  layout: Layout.BEAUTY,
  calendarCrossAxisSpacing: 0,
),
78
likes
120
pub points
90%
popularity

Publisher

unverified uploader

A clean calendar widget with vertical scroll, locale, and range selection date

Repository (GitHub)

Documentation

API reference

License

Icon for licenses.MIT (LICENSE)

Dependencies

flutter, intl, scrollable_positioned_list

More

Packages that depend on scrollable_clean_calendar