DatePickerDialog与TimePickerDialog的功能比較简单,使用方法也非常easy。仅仅要以下两步就可以。
Ø 通过newkeyword创建DatePickerDialog、TimePickerDialog实例。调用它们的show()方法就可以将日期选择对话框、时间选择对话框显示出来。
Ø 为DatePickerDialog、TimePickerDialog绑定监听器,这样能够保证用户通过DatePickerDialog、TimePickerDialog设置事件是触发监听器,从而通过监听器来获取用户设置的事件。
TimePickerDialog(时间选择对话框)
概述:
一个使用TimePicker的对话框,为用户提供时间选择。
类结构:
java.lang.Object ↳ android.app.Dialog ↳ android.app.AlertDialog ↳ android.app.TimePickerDialog
构造方法:
Public Constructors |
|
|
TimePickerDialog(Context context, TimePickerDialog.OnTimeSetListener callBack, int hourOfDay, int minute, boolean is24HourView) |
||
TimePickerDialog(Context context, int theme, TimePickerDialog.OnTimeSetListener callBack, int hourOfDay, int minute, boolean is24HourView) |
说明:
public TimePickerDialog (Context context, TimePickerDialog.OnTimeSetListener callBack,inthourOfDay, int minute, boolean is24HourView)
參数:
參数 |
说明 |
Context |
执行组件的Activity。 |
callBack |
用户选择好时间后。通知应用的回调函数。 |
hourOfDay |
初始的小时。 |
Minute |
初始的分钟。 |
is24HourView |
是否使用24小时制。 |
public TimePickerDialog (Context context,int teme, TimePickerDialog.OnTimeSetListener callBack,int hourOfDay, int minute, boolean is24HourView)
參数:
參数 |
说明 |
Context |
执行组件的Activity。 |
teme |
应用在时间选择对话框上的主题。 |
callBack |
用户选择好时间后,通知应用的回调函数。 |
hourOfDay |
初始的小时。 |
Minute |
初始的分钟。 |
is24HourView |
是否使用24小时制。 |
公有方法:
Public Methods |
|
void |
onClick(DialogInterface dialog, int which) 当对话框上的button被单击时这种方法将被回调。 |
void |
onRestoreInstanceState(Bundle savedInstanceState) 从前一个保存的bundle 中恢复对话框的状态。 |
Bundle |
onSaveInstanceState() 将对话框的状态保存到bundle 中. |
void |
onTimeChanged(TimePicker view, int hourOfDay, int minute) 当时间被关改变的时候回调该方法。 |
void |
updateTime(int hourOfDay, int minutOfHour) 更新时间 |
实例:
public static class TimePickerFragment extends DialogFragment implements TimePickerDialog.OnTimeSetListener { @Override public Dialog onCreateDialog(Bundle savedInstanceState) { // Use the current time as the default values for the picker final Calendar c = Calendar.getInstance(); int hour = c.get(Calendar.HOUR_OF_DAY); int minute = c.get(Calendar.MINUTE); // Create a new instance of TimePickerDialog and return it return new TimePickerDialog(getActivity(), this, hour, minute, DateFormat.is24HourFormat(getActivity())); } public void onTimeSet(TimePicker view, int hourOfDay, int minute) { // Do something with the time chosen by the user } }
DatePickerDialog(时间选择对话框)
概述:
一个带有的DatePicker的简单对话框,为用户提供日期选择。
类结构:
java.lang.Object ↳ android.app.Dialog ↳ android.app.AlertDialog ↳ android.app.DatePickerDialog
构造方法:
Public Constructors |
|
DatePickerDialog(Context context, DatePickerDialog.OnDateSetListener callBack, int year, int monthOfYear, int dayOfMonth) |
|
DatePickerDialog(Context context, int theme, DatePickerDialog.OnDateSetListener callBack, int year, int monthOfYear, int dayOfMonth) |
说明:
public DatePickerDialog(Context context, DatePickerDialog.OnDateSetListener callBack, int year, int monthOfYear, intdayOfMonth)
參数:
參数 |
说明 |
Context |
执行组件的Activity。 |
callBack |
用户选择好日期后,通知应用的回调函数。 |
year |
初始的年。 |
monthOfYear |
初始的月。 |
dayOfMonth |
初始的天。 |
public DatePickerDialog(Context context, int theme, DatePickerDialog.OnDateSetListener callBack, int year, int monthOfYear, intdayOfMonth)
參数:
參数 |
说明 |
Context |
执行组件的Activity。 |
theme |
应用在日期选择对话框上的主题。 |
callBack |
用户选择好日期后,通知应用的回调函数。 |
year |
初始的年。 |
monthOfYear |
初始的月。 |
dayOfMonth |
初始的天。 |
公有方法:
Public Methods |
|
DatePicker |
getDatePicker() 获取日期选择对话框。 |
void |
onClick(DialogInterface dialog, int which) 当对话框上的button被单击时这种方法将被回调。 |
void |
onDateChanged(DatePicker view, int year, int month, int day) 当日期改变的时候回调该方法。 |
void |
onRestoreInstanceState(Bundle savedInstanceState) 当对话框上的button被单击时这种方法将被回调。 |
Bundle |
onSaveInstanceState() 将对话框的状态保存到bundle 中。 |
void |
updateDate(int year, int monthOfYear, int dayOfMonth) 设置当前日期。 |
实例:
public static class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener { @Override public Dialog onCreateDialog(Bundle savedInstanceState) { // Use the current date as the default date in the picker final Calendar c = Calendar.getInstance(); int year = c.get(Calendar.YEAR); int month = c.get(Calendar.MONTH); int day = c.get(Calendar.DAY_OF_MONTH); // Create a new instance of DatePickerDialog and return it return new DatePickerDialog(getActivity(), this, year, month, day); } public void onDateSet(DatePicker view, int year, int month, int day) { // Do something with the date chosen by the user } }