我想在 DatePickerDialog 中禁用从今天日期开始的所有Next(after)日期。
我使用下面的代码来创建 DatePickerDialog:
Calendar calendar = Calendar.getInstance();
mYear = calendar.get(Calendar.YEAR);
mMonth = calendar.get(Calendar.MONTH);
mDay = calendar.get(Calendar.DAY_OF_MONTH);
//OnDateSetListener
private DatePickerDialog.OnDateSetListener myDateListener = new DatePickerDialog.OnDateSetListener() {
@Override
public void onDateSet(DatePicker arg0, int year, int monthOfYear, int dayOfMonth) {
calendar.set(year, monthOfYear, dayOfMonth);
String currentDate = date_format.format(calendar.getTime());
...
}
};
//Create DatePickerDialog here
protected Dialog onCreateDialog(int id) {
if (id == 999) {
DatePickerDialog dpDialog = new DatePickerDialog(getContext(), myDateListener, mYear, mMonth, mDay);
return dpDialog;
}
return null;
}
请建议我必须做什么才能在日期选择器对话框中禁用所有以前的日期。
最佳答案
只需在 DatePickerDialog
的 setMaxDate()
中传递当前日期。
DatePickerDialog dpDialog = new DatePickerDialog(getContext(), myDateListener, mYear, mMonth, mDay);
dpDialog.getDatePicker().setMaxDate(calendar.getTimeInMillis());
或
dpDialog.getDatePicker().setMaxDate(System.currentTimeMillis());
关于android - 如何在 DatePickerDialog Android 中禁用今天日期之后的日期?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37854859/