天天看点

android 日期对话框,Android日期选择器对话框DatePickerDialog使用详解

调用Android原生日期选择器对话框就是DatePickerDialog,具体内容如下

在Android4.4系统上效果如图:

android 日期对话框,Android日期选择器对话框DatePickerDialog使用详解

在Android5.0以上效果如图:

android 日期对话框,Android日期选择器对话框DatePickerDialog使用详解

1、Activity的onCreate方法中获取当时的年,月,日

Calendar ca = Calendar.getInstance();

mYear = ca.get(Calendar.YEAR);

mMonth = ca.get(Calendar.MONTH);

mDay = ca.get(Calendar.DAY_OF_MONTH);

2、通过按钮触发日期选择器

btn_day.setOnClickListener(new View.OnClickListener() {

@Override

public void onClick(View v) {

//TODO 调用时间选择器

new DatePickerDialog(MainActivity.this, onDateSetListener, mYear, mMonth, mDay).show();

}

});

3、实现选择器的监听,并将获取到的结果设置到TextView上:

private DatePickerDialog.OnDateSetListener onDateSetListener = new DatePickerDialog.OnDateSetListener() {

@Override

public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {

mYear = year;

mMonth = monthOfYear;

mDay = dayOfMonth;

String days;

if (mMonth + 1 < 10) {

if (mDay < 10) {

days = new StringBuffer().append(mYear).append("年").append("0").

append(mMonth + 1).append("月").append("0").append(mDay).append("日").toString();

} else {

days = new StringBuffer().append(mYear).append("年").append("0").

append(mMonth + 1).append("月").append(mDay).append("日").toString();

}

} else {

if (mDay < 10) {

days = new StringBuffer().append(mYear).append("年").

append(mMonth + 1).append("月").append("0").append(mDay).append("日").toString();

} else {

days = new StringBuffer().append(mYear).append("年").

append(mMonth + 1).append("月").append(mDay).append("日").toString();

}

}

tv_data.setText(days);

}

};

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。