本例介绍了日期DatePickerDialog和时间对话框TimePickerDialog的用法,可以获取时间或日期输入。

DatePickerDialog和TimePickerDialog都是AlertDialog的子类,因此和Alert的使用步骤基本一致: Android ApiDemos示例解析(22):App->Dialog

Data Widgets->1. Dialog_第1张图片" style="border:1px solid black;">

1. 定义存储日期和时间的变量

 // date and timeprivate int mYear;private int mMonth;private int mDay;private int mHour;private int mMinute;


2. 为日期和时间对话框定义ID

static final int TIME_DIALOG_ID = 0;static final int DATE_DIALOG_ID = 1;


3. 在Activity的onCreateDialog事件中初始化对话框

switch (id) { case TIME_DIALOG_ID: return new TimePickerDialog(this, mTimeSetListener, mHour, mMinute, false); case DATE_DIALOG_ID: return new DatePickerDialog(this, mDateSetListener, mYear, mMonth, mDay);}


4. 应用中可以多次显示时间或日期对话框,前面在onCreateDialog初始化对话框,在每次重新显示对话框前,可以在onPrepareDialog 重新设置对话框的值,本例使对话框显示当前屏幕显示的时间和日期值。

switch (id) { case TIME_DIALOG_ID: ((TimePickerDialog) dialog) .updateTime(mHour, mMinute); break; case DATE_DIALOG_ID: ((DatePickerDialog) dialog) .updateDate(mYear, mMonth, mDay); break;}

5. 构造函数定义

本例TimePickerDialog使用的构造函数定义如下:

public TimePickerDialog(Context context,
TimePickerDialog.OnTimeSetListener callBack,
int hourOfDay,
int minute, boolean is24HourView)

  • hourOfDay 小时
  • int minute 分钟
  • is24HourView 是否采用24小时制
  • callback ,用户选择好时间后,通知应用的回调函数,其类型为TimePickerDialog.OnTimeSetListener,可以用来取得当前时间对话框中的时间:

private TimePickerDialog.OnTimeSetListener mTimeSetListener =new TimePickerDialog.OnTimeSetListener() { public void onTimeSet(TimePicker view, int hourOfDay, int minute) { mHour = hourOfDay; mMinute = minute; updateDisplay(); }};


DatePickerDialog 本例使用的构造函数如下:

public DatePickerDialog(Context context, DatePickerDialog.OnDateSetListener callBack, int year, int monthOfYear, int dayOfMonth)

year 年

monthOfYear 月

dayOfMonth 日

callBack 用户选择好日期后,通知应用的回调函数,其类型为TimePickerDialog.OnTimeSetListener,可以用来取得当前时间对话框中的日期:

private TimePickerDialog.OnTimeSetListener mTimeSetListener = new TimePickerDialog.OnTimeSetListener() { public void onTimeSet(TimePicker view, int hourOfDay, int minute) { mHour = hourOfDay; mMinute = minute; updateDisplay(); } };

Data Widgets->1. Dialog_第2张图片" style="border:1px solid black;">



更多相关文章

  1. Android(安卓)简单自定义对话框:语言切换
  2. 关于android中alarm的使用
  3. Android(安卓)常用的性能分析工具详解:GPU呈现模式, TraceView, S
  4. android Chronometer 时间计时控件 简单介绍
  5. Android(安卓)App 启动过程分析
  6. android自定义dialog弹出框、透明背景
  7. android实现双击事件监听
  8. android 获得一个应用程序的启动次数,运行时间等信息
  9. Android(安卓)7.0修改系统时间

随机推荐

  1. Android之GridView
  2. android Menu
  3. android 设置文字跑马灯效果
  4. scale动画
  5. android 实现2张图片层叠效果
  6. gridview实例
  7. android代码片段二
  8. 2
  9. Android(安卓)设置透明按钮
  10. Android官网无法下载eclipse-adt-bundle