scrollable_clean_calendar

Creator: coderz1093

Last updated:

Add to Cart

Description:

scrollable clean calendar

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.5.0
copied to clipboard
to your pubspec.yaml and run
flutter pub get
copied to clipboard
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, 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


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


initialFocusDate
DateTime
null
Initial date that the calendar scroll should focus when open


scrollToMonth
Function({required DateTime date, double alignment = 0, required Duration duration, Curve curve = Curves.linear, List<double> opacityAnimationWeights = const [40, 20, 40]})
null
Animate the list over duration using the given curve such that the item at index ends up with its leading edge at the given alignment.


jumpToMonth
Function ({required DateTime date, double alignment = 0})
null
Immediately, without animation, reconfigure the list so that the item at index's leading edge is at the given alignment.


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


weekdayAspectRatio
double
1.0
The aspect ratio of weekday items


dayTextStyle
TextStyle
Theme.of(context).textTheme.bodyText1
The label text style of day


dayAspectRatio
double
1.0
The aspect ratio of day items


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


dayDisableColor
Color
Theme.of(context).colorScheme.onSurface.withOpacity(.5)
The day disable 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


readOnly
bool
false
If the Calendar Widget is on read-only mode



Layout.DEFAULT #

ScrollableCleanCalendar(
calendarController: calendarController,
layout: Layout.DEFAULT,
),
copied to clipboard
Layout.BEAUTY #

ScrollableCleanCalendar(
calendarController: calendarController,
layout: Layout.BEAUTY,
calendarCrossAxisSpacing: 0,
),
copied to clipboard

License

For personal and professional use. You cannot resell or redistribute these repositories in their original state.

Customer Reviews

There are no reviews.