я обнаружил нечто странное:
Давайте посмотрим на нормальный DatePickerDialog
:Android DatePickerDialog странно TextView
Когда я добавляю эту строку, которая устанавливает максимальную дату вчера:
datePickerDialog.getDatePicker().setMaxDate(yesterdayCal.getTime().getTime());
это выглядит следующим образом:
Вы видите разницу? Он добавляет TextView над DatePicker. Я не знаю почему. Это выглядит странно и всегда показывает ту же дату, что и выбрано. Я хочу удалить его? Некоторые идеи?
Полный код:
DatePickerDialog datePickerDialog = new DatePickerDialog(this, R.style.DialogTheme, new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
Calendar pickedCal = Calendar.getInstance(Locale.getDefault());
pickedCal.set(year, monthOfYear, dayOfMonth);
setToMidnight(pickedCal);
SimpleDateFormat dateFormat = new SimpleDateFormat("EEE dd.MM.yyyy", Locale.getDefault());
String pickedDate = dateFormat.format(pickedCal.getTime());
MyToast.showLong(LiveSelectActivity.this, getString(R.string.hinweis_nachtragen_gueltig, pickedDate));
startNachtragen(pickedCal.getTime());
}
}, currentCalendar.get(Calendar.YEAR), currentCalendar.get(Calendar.MONTH), currentCalendar.get(Calendar.DAY_OF_MONTH));
/*Setzt das maximale Auswahldatum auf gestern.*/
Calendar yesterdayCal = (Calendar) currentCalendar.clone();
yesterdayCal.add(Calendar.DATE, -1);
datePickerDialog.getDatePicker().setMaxDate(yesterdayCal.getTime().getTime());
datePickerDialog.show();
}
он работает! я дам тебе щедрость, как только ее разблокируют! – XxGoliathusxX
Проверьте это решение со старыми версиями Android. В современных версиях это может отлично работать, но более старым может потребоваться изменение названия. – Knossos