Marcador de data do Android min data máxima antes do nível da API 11
Estou tentando definir a data mínima e máxima do selecionador de data no Android até o nível 11 da API. Usei o seguinte código:
mDatePickerField = startDatePickerDialog.getClass().getDeclaredField("mDatePicker");
mDatePickerField.setAccessible(true);
DatePicker startDatePickerInstance =(DatePicker)mDatePickerField.get(startDatePickerDialog);
startDatePickerInstance.init(mYearMin, mMonthMin, mDayMin, new DatePicker.OnDateChangedListener() {
@Override
public void onDateChanged(DatePicker datePicker, int i, int i1, int i2) {
Date maxDate = new Date(mYearMax, mMonthMax, mDayMax, 0, 0, 0);
Date selectedDate = new Date(i, i1, i2, 0, 0, 0);
if (selectedDate.after(maxDate)) {
datePicker.updateDate(mYearMax, mMonthMax, mDayMax);
}
}
}
No entanto, oupdateDate
incêndios de métodoonDateChanged
novamente e o selecionador de data não é atualizado.
Alguém pode ajudar a resolver o problema?