1、点击响应事件,弹出DatePickerDialog
public void onClick(View view) {
switch (view.getId()) {
case R.id.btnBack:
onBackPressed();
break;
case R.id.btnCheck:
break;
case R.id.btnCamera:
break;
case R.id.etBirthday:
Calendar d = Calendar.getInstance(Locale.CHINA);
//创建一个日历引用d,通过静态方法getInstance() 从指定时区 Locale.CHINA 获得一个日期实例
Date myDate=new Date();
//创建一个Date实例
d.setTime(myDate);
//设置日历的时间,把一个新建Date实例myDate传入
int year=d.get(Calendar.YEAR);
int month=d.get(Calendar.MONTH);
int day=d.get(Calendar.DAY_OF_MONTH);
DatePickerDialog dpd=new DatePickerDialog(CreatAccountActivity.this,
Datelistener, year, month, day);
dpd.show();//显示DatePickerDialog组件
break;
}
}
2、DatePickerDialog响应事件设置
private DatePickerDialog.OnDateSetListener Datelistener=
new DatePickerDialog.OnDateSetListener()
{
/**params:view:该事件关联的组件
* params:myyear:当前选择的年
* params:monthOfYear:当前选择的月
* params:dayOfMonth:当前选择的日
*/
private int year;
private int month;
private int day;
@Override
public void onDateSet(DatePicker view, int myyear, int monthOfYear, int dayOfMonth) {
//修改year、month、day的变量值,以便以后单击按钮时,DatePickerDialog上显示上一次修改后的值
year = myyear;
month = monthOfYear + 1;
day = dayOfMonth;
//更新日期
updateDate();
}
//当DatePickerDialog关闭时,更新日期显示
private void updateDate()
{
//在TextView上显示日期
String txt = String.format("%d-%02d-%02d", year, month, day);
etBirthday.setText(txt);
}
};