Most visited

Recently visited

Added in API level 1

DatePicker

public class DatePicker
extends FrameLayout

java.lang.Object
   ↳ android.view.View
     ↳ android.view.ViewGroup
       ↳ android.widget.FrameLayout
         ↳ android.widget.DatePicker


提供选择日期的小部件。

DatePicker_datePickerMode属性设置为spinner ,可以使用年,月,日CalendarViewCalendarView选择日期。 这组纺纱器和日历视图自动同步。 客户可以自定义是否只显示纺纱者,或者只是日历视图,或者两者都显示。

DatePicker_datePickerMode属性设置为 calendar ,可以使用日历样式视图选择月份和日期,而可以使用列表单独选择年份。

请参阅 Pickers指南。

有关使用此视图的对话框,请参阅 DatePickerDialog

Summary

Nested classes

interface DatePicker.OnDateChangedListener

用于指示用户更改日期的回调。

XML attributes

android:calendarTextColor The text color list of the calendar. 
android:calendarViewShown Whether the calendar view is shown. 
android:datePickerMode Defines the look of the widget. 
android:dayOfWeekBackground The background color for the header's day of week. 
android:dayOfWeekTextAppearance The text color for the header's day of week. 
android:endYear The last year (inclusive), for example "2010". 
android:firstDayOfWeek The first day of week according to Calendar
android:headerBackground The background for the selected date header. 
android:headerDayOfMonthTextAppearance The text appearance for the day of month (ex. 
android:headerMonthTextAppearance The text appearance for the month (ex. 
android:headerYearTextAppearance The text appearance for the year (ex. 
android:maxDate The maximal date shown by this calendar view in mm/dd/yyyy format. 
android:minDate The minimal date shown by this calendar view in mm/dd/yyyy format. 
android:spinnersShown Whether the spinners are shown. 
android:startYear The first year (inclusive), for example "1940". 
android:yearListItemTextAppearance The list year's text appearance in the list. 
android:yearListSelectorColor The list year's selected circle color in the list. 

Inherited XML attributes

From class android.widget.FrameLayout
From class android.view.ViewGroup
From class android.view.View

Inherited constants

From class android.view.ViewGroup
From class android.view.View

Inherited fields

From class android.view.View

Public constructors

DatePicker(Context context)
DatePicker(Context context, AttributeSet attrs)
DatePicker(Context context, AttributeSet attrs, int defStyleAttr)
DatePicker(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes)

Public methods

CharSequence getAccessibilityClassName()

返回此对象的类名称以用于辅助功能。

CalendarView getCalendarView()

此方法在API级别24中已弃用。不受Material-style calendar模式的支持

boolean getCalendarViewShown()

此方法在API级别24中已弃用。不支持Material-style calendar模式

int getDayOfMonth()
int getFirstDayOfWeek()

获取每周的第一天。

long getMaxDate()

getDefault()时区1970年1月1日00:00:00起,以毫秒为单位获取此 DatePicker支持的最大日期。

long getMinDate()

获取自 getDefault()时区1970年1月1日00:00:00起以毫秒为单位的 DatePicker支持的最小日期。

int getMonth()
boolean getSpinnersShown()

此方法在API级别24中已弃用。不支持Material-style calendar模式

int getYear()
void init(int year, int monthOfYear, int dayOfMonth, DatePicker.OnDateChangedListener onDateChangedListener)

初始化状态。

boolean isEnabled()

返回此视图的启用状态。

void setCalendarViewShown(boolean shown)

此方法在API级别24中已被弃用。不受Material-style calendar模式支持

void setEnabled(boolean enabled)

设置此视图的启用状态。

void setFirstDayOfWeek(int firstDayOfWeek)

设置每周的第一天。

void setMaxDate(long maxDate)

设置此支持的最大日期 DatePicker自1970年1月1日,00:00毫秒 getDefault()时区。

void setMinDate(long minDate)

设置自 getDefault()时区以来的1970年1月1日00:00:00以毫秒为单位的 NumberPicker支持的最小日期。

void setSpinnersShown(boolean shown)

此方法在API级别24中已弃用。不支持Material-style calendar模式

void updateDate(int year, int month, int dayOfMonth)

更新当前日期。

Protected methods

void dispatchRestoreInstanceState(SparseArray<Parcelable> container)

restoreHierarchyState(android.util.SparseArray)调用以检索此视图及其子项的状态。

void onConfigurationChanged(Configuration newConfig)

当应用程序使用的资源的当前配置发生更改时调用。

void onRestoreInstanceState(Parcelable state)

吊钩允许视图重新应用先前由 onSaveInstanceState()生成的其内部状态的表示。

Parcelable onSaveInstanceState()

钩子允许视图生成其内部状态的表示,稍后可用于创建具有相同状态的新实例。

Inherited methods

From class android.widget.FrameLayout
From class android.view.ViewGroup
From class android.view.View
From class java.lang.Object
From interface android.view.ViewParent
From interface android.view.ViewManager
From interface android.graphics.drawable.Drawable.Callback
From interface android.view.KeyEvent.Callback
From interface android.view.accessibility.AccessibilityEventSource

XML attributes

android:calendarTextColor

日历的文字颜色列表。

必须是“ #rgb ”,“ #argb ”,“ #rrggbb ”或“ #aarrggbb ”形式的颜色值。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 calendarTextColor

android:calendarViewShown

是否显示日历视图。 仅适用于“微调”模式。

必须是布尔值,“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 calendarViewShown

android:datePickerMode

定义小部件的外观。 在发布L之前,唯一的选择是微调。 从L开始,在选择Material主题的情况下,默认布局是日历,但可以使用此属性来强制使用微调器。

必须是下列常数值之一。

Constant Value 描述
spinner 1 Date picker with spinner controls to select the date.
calendar 2 Date picker with calendar to select the date.

这对应于全局属性资源符号 datePickerMode

android:dayOfWeekBackground

标题的星期几的背景颜色。

必须是“ #rgb ”,“ #argb ”,“ #rrggbb ”或“ #aarrggbb ”形式的颜色值。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 dayOfWeekBackground

android:dayOfWeekTextAppearance

标题星期几的文本颜色。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 dayOfWeekTextAppearance

android:endYear

去年(含),例如“2010”。

必须是整数值,例如“ 100 ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 endYear

android:firstDayOfWeek

根据 Calendar的第一天。

必须是整数值,例如“ 100 ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 firstDayOfWeek

相关方法:

android:headerBackground

所选日期标题的背景。

可能是另一种资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

可以是“ #rgb ”,“ #argb ”,“ #rrggbb ”或“ #aarrggbb ”形式的颜色值。

这对应于全局属性资源符号 headerBackground

android:headerDayOfMonthTextAppearance

所选日期标题中的月份日期(例如28)的文本外观。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 headerDayOfMonthTextAppearance

android:headerMonthTextAppearance

所选日期标题中月份的文本外观(例如May)。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 headerMonthTextAppearance

android:headerYearTextAppearance

选定日期标题中的年份(例如2014)的文字外观。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 headerYearTextAppearance

android:maxDate

此日历视图以mm / dd / yyyy格式显示的最大日期。

必须是字符串值,使用'\\;' 转义字符如'\\ n'或'\\ uxxxx'作为unicode字符。

这也可以是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 maxDate

android:minDate

此日历视图以mm / dd / yyyy格式显示的最小日期。

必须是字符串值,使用'\\;' 转义字符如'\\ n'或'\\ uxxxx'作为unicode字符。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 minDate

android:spinnersShown

是否显示纺纱人员。 仅适用于“微调”模式。

必须是布尔值,“ true ”或“ false ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 spinnersShown

android:startYear

第一年(含),例如“1940”。

必须是整数值,例如“ 100 ”。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 startYear

android:yearListItemTextAppearance

列表年的文字出现在列表中。

必须是另一个资源的引用,其形式为“ @[+][package:]type:name ”,或者其形式为“一个主题属性 ?[package:][type:]name ”。

这对应于全局属性资源符号 yearListItemTextAppearance

android:yearListSelectorColor

列表年份在列表中选择了圆圈颜色。

必须是“ #rgb ”,“ #argb ”,“ #rrggbb ”或“ #aarrggbb ”形式的颜色值。

这也可能是对包含此类型值的资源(形式为“ @[package:]type:name ”)或主题属性(形式为“ ?[package:][type:]name ”)的 ?[package:][type:]name

这对应于全局属性资源符号 yearListSelectorColor

Public constructors

DatePicker

Added in API level 1
DatePicker (Context context)

Parameters
context Context

DatePicker

Added in API level 1
DatePicker (Context context, 
                AttributeSet attrs)

Parameters
context Context
attrs AttributeSet

DatePicker

Added in API level 1
DatePicker (Context context, 
                AttributeSet attrs, 
                int defStyleAttr)

Parameters
context Context
attrs AttributeSet
defStyleAttr int

DatePicker

Added in API level 21
DatePicker (Context context, 
                AttributeSet attrs, 
                int defStyleAttr, 
                int defStyleRes)

Parameters
context Context
attrs AttributeSet
defStyleAttr int
defStyleRes int

Public methods

getAccessibilityClassName

Added in API level 23
CharSequence getAccessibilityClassName ()

返回此对象的类名称以用于辅助功能。 如果子类正在实现的东西应该被视为一个全新的视图类,当它被可访问性使用时,子类只应该覆盖这个子类,与它所源自的类无关。 这用于填写AccessibilityNodeInfo.setClassName

Returns
CharSequence

getCalendarView

Added in API level 12
CalendarView getCalendarView ()

此方法在API级别24中已弃用。
不支持Material-style calendar模式

返回此选取器使用的 CalendarView

注意:此方法抛出 UnsupportedOperationExceptionDatePicker_datePickerMode属性设置为 calendar

Returns
CalendarView the calendar view
Throws
UnsupportedOperationException if called when the picker is displayed in calendar mode

也可以看看:

getCalendarViewShown

Added in API level 11
boolean getCalendarViewShown ()

此方法在API级别24中已弃用。
不支持Material-style calendar模式

返回是否显示 CalendarView

注意:此方法返回 falseDatePicker_datePickerMode属性设置为 calendar

Returns
boolean true if the calendar view is shown

也可以看看:

getDayOfMonth

Added in API level 1
int getDayOfMonth ()

Returns
int The selected day of month.

getFirstDayOfWeek

Added in API level 21
int getFirstDayOfWeek ()

获取每周的第一天。

相关XML属性:

Returns
int The first day of the week conforming to the CalendarView APIs.

也可以看看:

getMaxDate

Added in API level 11
long getMaxDate ()

从1970年1月1日00:00:00开始,以 getDefault()时区为单位获取此 DatePicker支持的最大日期,以毫秒为单位。

Note: The default maximal date is 12/31/2100.

Returns
long The maximal supported date.

getMinDate

Added in API level 11
long getMinDate ()

getDefault()时区1970年1月1日00:00:00以毫秒为单位获取此 DatePicker支持的最小日期。

注意:默认的最短日期是01/01/1900。

Returns
long The minimal supported date.

getMonth

Added in API level 1
int getMonth ()

Returns
int The selected month.

getSpinnersShown

Added in API level 11
boolean getSpinnersShown ()

此方法在API级别24中已弃用。
不支持Material-style calendar模式

返回是否显示旋转器。

注:他的方法返回 falseDatePicker_datePickerMode属性设置为 calendar

Returns
boolean true if the spinners are shown

getYear

Added in API level 1
int getYear ()

Returns
int The selected year.

init

Added in API level 1
void init (int year, 
                int monthOfYear, 
                int dayOfMonth, 
                DatePicker.OnDateChangedListener onDateChangedListener)

初始化状态。 如果提供的值指定了不一致的日期,则在更新微调器之前将这些值标准化。

Parameters
year int: The initial year.
monthOfYear int: The initial month starting from zero.
dayOfMonth int: The initial day of the month.
onDateChangedListener DatePicker.OnDateChangedListener: How user is notified date is changed by user, can be null.

isEnabled

Added in API level 1
boolean isEnabled ()

返回此视图的启用状态。 启用状态的解释因子而异。

Returns
boolean True if this view is enabled, false otherwise.

setCalendarViewShown

Added in API level 11
void setCalendarViewShown (boolean shown)

此方法在API级别24中已弃用。
不支持Material-style calendar模式

设置是否显示 CalendarView

注意:DatePicker_datePickerMode属性设置为 calendar时,调用此方法 calendar

Parameters
shown boolean: true to show the calendar view, false to hide it

setEnabled

Added in API level 1
void setEnabled (boolean enabled)

设置此视图的启用状态。 启用状态的解释因子而异。

Parameters
enabled boolean: True if this view is enabled, false otherwise.

setFirstDayOfWeek

Added in API level 21
void setFirstDayOfWeek (int firstDayOfWeek)

设置每周的第一天。

相关XML属性:

Parameters
firstDayOfWeek int: The first day of the week conforming to the CalendarView APIs.

也可以看看:

setMaxDate

Added in API level 11
void setMaxDate (long maxDate)

设置此 DatePicker支持的最大日期,以毫秒为单位,自1970年1月1日00:00:00开始,位于 getDefault()时区。

Parameters
maxDate long: The maximal supported date.

setMinDate

Added in API level 11
void setMinDate (long minDate)

设置 NumberPicker支持的最小日期,以毫秒为单位,自1970年1月1日00:00:00开始,位于 getDefault()时区。

Parameters
minDate long: The minimal supported date.

setSpinnersShown

Added in API level 11
void setSpinnersShown (boolean shown)

此方法在API级别24中已弃用。
不受Material-style calendar模式的支持

设置是否显示spinners。

DatePicker_datePickerMode属性设置为 calendar时,调用此方法 calendar

Parameters
shown boolean: true to show the spinners, false to hide them

updateDate

Added in API level 1
void updateDate (int year, 
                int month, 
                int dayOfMonth)

更新当前日期。

Parameters
year int: The year.
month int: The month which is starting from zero.
dayOfMonth int: The day of the month.

Protected methods

dispatchRestoreInstanceState

Added in API level 1
void dispatchRestoreInstanceState (SparseArray<Parcelable> container)

restoreHierarchyState(android.util.SparseArray)调用以检索此视图及其子项的状态。 可能会被覆盖以修改对视图的子项进行恢复的方式; 例如,一些视图可能不想为他们的孩子存储状态。

Parameters
container SparseArray: The SparseArray which holds previously saved state.

onConfigurationChanged

Added in API level 8
void onConfigurationChanged (Configuration newConfig)

当应用程序使用的资源的当前配置发生更改时调用。 您可以使用它来决定何时重新加载可根据方向和其他配置特性更改的资源。 如果您不依赖正常的配置更改时重新创建活动实例的Activity机制,则只需要使用它。

Parameters
newConfig Configuration: The new resource configuration.

onRestoreInstanceState

Added in API level 1
void onRestoreInstanceState (Parcelable state)

吊钩允许视图重新应用先前由onSaveInstanceState()生成的内部状态的表示。 这个函数永远不会被调用为null状态。

Parameters
state Parcelable: The frozen state that had previously been returned by onSaveInstanceState().

onSaveInstanceState

Added in API level 1
Parcelable onSaveInstanceState ()

钩子允许视图生成其内部状态的表示,稍后可用于创建具有相同状态的新实例。 此状态应仅包含不持久或以后不能重建的信息。 例如,您永远不会将当前位置存储在屏幕上,因为当视图的新实例放置在其视图层次结构中时会再次计算该位置。

您可能在此处存储的某些示例:文本视图中的当前光标位置(但通常不是文本本身,因为它存储在内容提供程序或其他永久性存储中),即当前在列表视图中选择的项目。

Returns
Parcelable Returns a Parcelable object containing the view's current dynamic state, or null if there is nothing interesting to save. The default implementation returns null.

Hooray!