Android中的日期和时间设置对话框

如何在Android中创建日期和时间设置对话框? 我想要:

  • 3个字段 – 日,小时和分钟
  • 它应该看起来像系统本机 – 这使得编写我自己的小部件非常困难 – 如何使每个字段上方/下方的加号/减号按钮看起来像TimePickerDialog中的标准按钮? 我的意思是甚至在HTC Sense上。

创建用于显示日期和时间的按钮,并触发日期和时间对话框。

示例代码:

fromDatePicker = (Button) findViewById(R.id.fromDatePicker); fromDatePicker.setText(dateNow); fromDatePicker.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { showDialog(FROM_DATE_DIALOG_ID); } }); fromTimePicker = (Button) findViewById(R.id.fromTimePicker); fromTimePicker.setText(timeNow); fromTimePicker.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { showDialog(FROM_TIME_DIALOG_ID); } }); 

创建这样的对话框:

 @Override protected Dialog onCreateDialog(int id) { switch (id) { case FROM_TIME_DIALOG_ID: return new TimePickerDialog(this,fromTimeSetListener, fromHour, fromMinute, false); case FROM_DATE_DIALOG_ID: return new DatePickerDialog(this,fromDateSetListener,fromYear, fromMonth, fromDay); case TO_TIME_DIALOG_ID: return new TimePickerDialog(this,toTimeSetListener, toHour, toMinute, false); case TO_DATE_DIALOG_ID: return new DatePickerDialog(this,toDateSetListener,toYear, toMonth, toDay); } return null; } 

您的屏幕将如下所示:

替代文字

单击日期按钮时,将popup一个类似于此的日期选择器:

替代文字

单击时间按钮时,会popup一个时间戳,如下所示:

替代文字

Android不提供开箱即用的组合DateTimePicker对话框…如果要在1个屏幕或对话框上同时组合日期和时间选择器,您有3个选项:

在布局/视图中使用UI小部件:

   

查找提供此function的第三方组件

http://code.google.com/p/datetimepicker上有一个自定义日期时间戳

自己写一个