如何在DatePickerDialog Android中禁用今天日期之后的日期?

pRa*_*NaY 3 android datepicker android-datepicker datepickerdialog android-studio

我想在DatePickerDialog中禁用今天日期的所有Next(after)日期.

我使用下面的代码来创建DatePickerDialog:

    Calendar calendar = Calendar.getInstance();
    mYear = calendar.get(Calendar.YEAR);
    mMonth = calendar.get(Calendar.MONTH);
    mDay = calendar.get(Calendar.DAY_OF_MONTH);

 //OnDateSetListener
 private DatePickerDialog.OnDateSetListener myDateListener = new DatePickerDialog.OnDateSetListener() {
    @Override
    public void onDateSet(DatePicker arg0, int year, int monthOfYear, int dayOfMonth) {
        calendar.set(year, monthOfYear, dayOfMonth);
        String currentDate = date_format.format(calendar.getTime());
        ...
    }
};
 //Create DatePickerDialog here
 protected Dialog onCreateDialog(int id) {
    if (id == 999) {
        DatePickerDialog dpDialog = new DatePickerDialog(getContext(), myDateListener, mYear, mMonth, mDay);

        return dpDialog;
    }
    return null;
}
Run Code Online (Sandbox Code Playgroud)

请建议我必须做什么来禁用datepicker对话框中的所有先前日期.

Rav*_*avi 11

只是通过当前日期setMaxDate()DatePickerDialog.

DatePickerDialog dpDialog = new DatePickerDialog(getContext(), myDateListener, mYear, mMonth, mDay);
dpDialog.getDatePicker().setMaxDate(calendar.getTimeInMillis());
Run Code Online (Sandbox Code Playgroud)

要么

dpDialog.getDatePicker().setMaxDate(System.currentTimeMillis());
Run Code Online (Sandbox Code Playgroud)