DatePickerDialog class

A Material-style date picker dialog.

It is used internally by showDatePicker or can be directly pushed onto the Navigator stack to enable state restoration. See showDatePicker for a state restoration app example.

See also:

Inheritance

Constructors

DatePickerDialog({Key? key, DateTime? initialDate, required DateTime firstDate, required DateTime lastDate, DateTime? currentDate, DatePickerEntryMode initialEntryMode = DatePickerEntryMode.calendar, SelectableDayPredicate? selectableDayPredicate, String? cancelText, String? confirmText, String? helpText, DatePickerMode initialCalendarMode = DatePickerMode.day, String? errorFormatText, String? errorInvalidText, String? fieldHintText, String? fieldLabelText, TextInputType? keyboardType, String? restorationId, ValueChanged<DatePickerEntryMode>? onDatePickerModeChange, Icon? switchToInputEntryModeIcon, Icon? switchToCalendarEntryModeIcon, EdgeInsets insetPadding = const EdgeInsets.symmetric(horizontal: 16.0, vertical: 24.0), CalendarDelegate<DateTime> calendarDelegate = const GregorianCalendarDelegate()})
A Material-style date picker dialog.

Properties

calendarDelegate → CalendarDelegate<DateTime>
The calendarDelegate controls date interpretation, formatting, and navigation within the picker. By providing a custom implementation, you can support alternative calendar systems such as Nepali, Hijri, Buddhist, and more. Defaults to GregorianCalendarDelegate.
final
cancelText → String?
The text that is displayed on the cancel button.
final
confirmText → String?
The text that is displayed on the confirm button.
final
currentDate → DateTime
The DateTime representing today. It will be highlighted in the day grid.
final
errorFormatText → String?
The error text displayed if the entered date is not in the correct format.
final
errorInvalidText → String?
The error text displayed if the date is not valid.
final
fieldHintText → String?
The hint text displayed in the TextField.
final
fieldLabelText → String?
The label text displayed in the TextField.
final
firstDate → DateTime
The earliest allowable DateTime that the user can select.
final
hashCode → int
The hash code for this object.
no setterinherited
helpText → String?
The text that is displayed at the top of the header.
final
initialCalendarMode → DatePickerMode
The initial display of the calendar picker.
final
initialDate → DateTime?
The initially selected DateTime that the picker should display.
final
initialEntryMode → DatePickerEntryMode
The initial mode of date entry method for the date picker dialog.
final
insetPadding → EdgeInsets
The amount of padding added to MediaQueryData.viewInsets on the outside of the dialog. This defines the minimum space between the screen's edges and the dialog.
final
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
keyboardType → TextInputType?
The keyboard type of the TextField.
final
lastDate → DateTime
The latest allowable DateTime that the user can select.
final
onDatePickerModeChange → ValueChanged<DatePickerEntryMode>?
Called when the DatePickerDialog is toggled between DatePickerEntryMode.calendar,DatePickerEntryMode.input.
final
restorationId → String?
Restoration ID to save and restore the state of the DatePickerDialog.
final
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
selectableDayPredicate → SelectableDayPredicate?
Function to provide full control over which DateTime can be selected.
final
switchToCalendarEntryModeIcon → Icon?
An optional switchToCalendarEntryModeIcon argument can be used to display a custom Icon in the corner of the dialog when DatePickerEntryMode is DatePickerEntryMode.input. Clicking on icon changes the DatePickerEntryMode to DatePickerEntryMode.calendar. If null, Icon(Icons.calendar_today) is used.
final
switchToInputEntryModeIcon → Icon?
An optional switchToInputEntryModeIcon argument can be used to display a custom Icon in the corner of the dialog when DatePickerEntryMode is DatePickerEntryMode.calendar. Clicking on icon changes the DatePickerEntryMode to DatePickerEntryMode.input. If null, Icon(useMaterial3 ? Icons.edit_outlined : Icons.edit) is used.
final

Methods

createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → State<DatePickerDialog>
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited