Установка конкретной даты в datePickerdialog

У меня есть setMaxDate в диалоговом окне datepickerdialog. Он работает хорошо, но минимальное значение в сегменте года - 1980. Как я могу установить это значение, скажем, 1900. Мой код:

DatePickerDialog dp=new DatePickerDialog(getParent(),datesetListener,day,month,year);
dp.getDatePicker().setMaxDate(System.currentTimeinMillis());

person user3265408    schedule 17.04.2014    source источник


Ответы (2)


Вы можете получить базовый DatePicker из DatePickerDialog (просто вызвав getDatePicker()) и установить его границы, используя:

setMinDate(long minDate)

setMaxDate(long maxDate)

Где аргумент — обычное количество миллисекунд с 00:00:00 1 января 1970 года в часовом поясе по умолчанию. Конечно, вам все равно придется вычислять эти значения, но это должно быть тривиально для класса Calendar: просто передайте текущую дату и добавьте или вычтите из нее x лет.

Ссылка на здесь и здесь

Образец кода

        Date min = new Date(2013-1900, 4, 21);
        DatePicker p = getDatePicker();
        p.setMinDate(min.getTime());
person Jitender Dev    schedule 17.04.2014
comment
попробовал это, но он установил минимальный год на 2014 и максимальный на 2036, а не то, что ожидается - person user3265408; 24.04.2014

Попробуйте это dp.setMinDate(new Date(1900,1,1));

person Aakash Goyal    schedule 17.04.2014