Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

android: TimePickerDialog prevent user select past time and can select future time with new date

I am using this link Android TimePickerDialog set max time.

I am new in android. With the help of this code, I cannot select past time but we cannot select future time. When 12 is selected in timepickerdialog mode change to am automatically according to the next day not past day.

like image 759
Atif Amin Avatar asked Jan 06 '17 13:01

Atif Amin


People also ask

How to make Android Time Picker to not allow past Time being picked?

try this code: TimePickerFragment timePickerFragment = new TimePickerFragment(); timePickerFragment. setOnTimeSetListener(new OnTimeSetListener() { public void onTimeSet(TimePicker view, int hourOfDay, int minute) { Calendar datetime = Calendar. getInstance(); Calendar c = Calendar.


1 Answers

private int  mHour, mMinute;
final Calendar c = Calendar.getInstance();

mHour = c.get(Calendar.HOUR_OF_DAY);
mMinute = c.get(Calendar.MINUTE);

// Launch Time Picker Dialog
TimePickerDialog timePickerDialog = new TimePickerDialog(ActivityScheduleTransfer.this,
        new TimePickerDialog.OnTimeSetListener() {
            @Override
            public void onTimeSet(TimePicker view, int hourOfDay, int minute) {
                final Calendar checkOldDate = Calendar.getInstance();
                  if (hourOfDay >= checkOldDate.get(Calendar.HOUR_OF_DAY)) { 
                      if (hourOfDay == checkOldDate.get(Calendar.HOUR_OF_DAY) && minute <= checkOldDate.get(Calendar.MINUTE)) {
                                return;
                        }
                    //select current after 
                } else {`enter code here`
                    //select current before 
                }
            }
        }, mHour, mMinute, false);
            timePickerDialog.show();
like image 92
Dhiraj Ved Avatar answered Oct 26 '22 23:10

Dhiraj Ved