1、添加日期、时间拾取器
<DatePicker
android:id="@+id/datePicker1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TimePicker
android:id="@+id/timePicker1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
2、在MainActivity的onCreate()方法中,获取日期拾取组件和时间拾取组件
DatePicker datePicker = (DatePicker)findViewById(R.id.datePicker1);
TimePicker timePicker = (TimePicker)findViewById(R.id.timePicker1);
timePicker.setIs24HourView(true);
3、创建一个日历对象,并获取当前年、月、日、小时和分钟数
Calendar calendar = Calendar.getInstance();
year=calendar.get(calendar.YEAR);
month=calendar.get(calendar.MONTH);
day=calendar.get(calendar.DAY_OF_MONTH);
hour=calendar.get(calendar.HOUR_OF_DAY);
minute=calendar.get(calendar.MINUTE);
4、初始化日期拾取组件,并在初始化时为其设置OnDateChangeListener事件监听器,以及为时间拾取组件添加时间监听器
datePicker.init(year, month, day, new DatePicker.OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
MainActivity.this.year=year;
MainActivity.this.month=month;
MainActivity.this.day=day;
show(year,month,day,hour,minute);
}
});
timePicker.setOnTimeChangedListener(new TimePicker.OnTimeChangedListener() {
@Override
public void onTimeChanged(TimePicker view, int hourOfDay, int minute) {
MainActivity.this.hour=hourOfDay;
MainActivity.this.minute=minute;
show(year,month,day,hourOfDay,minute);
}
});
5、编写show()方法
private void show(int year,int month,int day,int hour,int minute){
String str = year+"年"+(month+1)+"月"+day+"日"+hour+"."+minute;
Toast.makeText(this,str,Toast.LENGTH_SHORT).show();
}
ps:由于通过DatePciker对象获取到的月份是0~11月,而不是1~12月,所以需要将获取的结果加1,才能代表真正的月份