<DatePicker> is a UI component that lets users select a date from a pre-configured range.

See also: TimePicker.

xml
<DatePicker />
html
<DatePicker />
tsx
<datePicker date={currentDate}></datePicker>
tsx
<datepicker date={date}></datepicker>
svelte
<script lang="ts">
  import { Frame } from '@nativescript/core'

  let value = new Date()
  function goBack() {
    Frame.goBack()
  }
</script>

<page>
  <actionBar>
    <label>DatePicker</label>
  </actionBar>

  <gridLayout>
    <contentView horizontalAlignment="center" verticalAlignment="center">
      <stackLayout>
        <!-- #region example -->
        <datepicker bind:date={value}></datepicker>
        <!--  #endregion example -->
        <label>{value}</label>
      </stackLayout>
    </contentView>
  </gridLayout>
</page>

<style>
</style>
vue
<DatePicker />
xml
<DatePicker
  year="2023"
  month="8"
  day="28"
  date="{{ date }}"
  minDate="{{ minDate }}"
  maxDate="{{ maxDate }}"
/>

Props

date

ts
date: Date

Gets or sets the complete date.

minDate

ts
minDate: Date

Gets or sets the earliest possible date to select.

maxDate

ts
maxDate: Date

Gets or sets the latest possible date to select.

day

ts
day: number

Gets or sets the day of the month.

month

ts
month: number

Gets or sets the month.

year

ts
year: number

Gets or sets the year.

iosPreferredDatePickerStyle

ts
iosPreferredDatePickerStyle: UIDatePickerStyle

Gets or set the UIDatePickerStyle of the DatePicker in iOS 13.4+.

Default value: 0 (automatic).

Valid values:

  • 0 = automatic: system picks the concrete style based on the current platform and DatePicker mode.
  • 1 = wheels: the DatePicker displays as a wheel picker.
  • 2 = compact : the DatePicker displays as a label that when tapped displays a calendar-style editor.
  • 3 = inline : the DatePickers displays as an inline, editable field

Events

dateChange

ts
on('dateChange', (args: PropertyChangeData) => {
  const picker = args.object as DatePicker
  console.log('New date:', args.value)
})

Emitted when the selected date changes.

See PropertyChangeData.

minDateChange

ts
on('minDateChange', (args: PropertyChangeData) => {
  const picker = args.object as DatePicker
  console.log('New minDate:', args.value)
})

Emitted when the minimum date changes.

See PropertyChangeData.

maxDateChange

ts
on('maxDateChange', (args: PropertyChangeData) => {
  const picker = args.object as DatePicker
  console.log('New maxDate:', args.value)
})

Emitted when the maximum date changes.

See PropertyChangeData.

dayChange

ts
on('dayChange', (args: PropertyChangeData) => {
  const picker = args.object as DatePicker
  console.log('New day:', args.value)
})

Emitted when the day changes.

See PropertyChangeData.

monthChange

ts
on('monthChange', (args: PropertyChangeData) => {
  const picker = args.object as DatePicker
  console.log('New month:', args.value)
})

Emitted when the month changes.

See PropertyChangeData.

yearChange

ts
on('yearChange', (args: PropertyChangeData) => {
  const picker = args.object as DatePicker
  console.log('New year:', args.value)
})

Emitted when the year changes.

See PropertyChangeData.

Native component

Previous
Button