0

I want to disable past dates in datepicker.

new DatePickerDialog(this,listener,calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH));
DatePickerDialog.getDatePicker().setMinDate(System.currentTimeMillis() - 1000);
DatePickerDialog.show();
Henry
  • 42,982
  • 7
  • 68
  • 84
  • 1
    Possible duplicate of [How to disable past dates in Android date picker?](https://stackoverflow.com/questions/23762231/how-to-disable-past-dates-in-android-date-picker) – ADM May 08 '19 at 10:15

2 Answers2

0

Try this way

    Calendar calendar1 = Calendar.getInstance();
    calendar1.add(Calendar.DAY_OF_MONTH, -1);

    new DatePickerDialog(this,listener,calendar.get(Calendar.YEAR),calendar.get(Calendar.MONTH),calendar.get(Calendar.DAY_OF_MONTH));
    DatePickerDialog.getDatePicker().setMinDate(calendar1.getTimeInMillis());
    DatePickerDialog.show();
Ganesh Pokale
  • 1,538
  • 1
  • 14
  • 28
  • DatePickerDialog.OnDateSetListener listener = new DatePickerDialog.OnDateSetListener() { @Override public void onDateSet(DatePicker arg0, int arg1, int arg2, int arg3) { // TODO Auto-generated method stub calendar.set(Calendar.YEAR, arg1); calendar.set(Calendar.MONTH, arg2); calendar.set(Calendar.DAY_OF_MONTH, arg3); txtDate.setText(format.format(calendar.getTime())); } }; – Tude Christian Neil May 08 '19 at 10:05
0

you can just pass the setMaxDate() for the DatePickerDailog,

DatePickerDialog dateDialog = new DatePickerDialog(getContext(), myDateListener, year, 
 month, day);
dateDialog.getDatePicker().setMaxDate(calendar.getTimeInMillis());

Or you can also do this,

dateDialog.getDatePicker().setMaxDate(System.currentTimeMillis());
Brahma Datta
  • 1,102
  • 1
  • 12
  • 20