天天看點

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);

}

};

以上就是本文的全部内容,希望對大家的學習有所幫助,也希望大家多多支援腳本之家。