vnimmanapalli vnimmanapalli - 5 months ago 408
Android Question

How to Disable future dates in Android date picker

How to Disable future dates in Android date picker

Java Code :

mExpireDate.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {

// To show current date in the datepicker
final Calendar mcurrentDate = Calendar.getInstance();
int mYear = mcurrentDate.get(Calendar.YEAR);
int mMonth = mcurrentDate.get(Calendar.MONTH);
int mDay = mcurrentDate.get(Calendar.DAY_OF_MONTH);

DatePickerDialog mDatePicker = new DatePickerDialog(
EventRegisterActivity.this, new OnDateSetListener() {
public void onDateSet(DatePicker datepicker,
int selectedyear, int selectedmonth,
int selectedday) {

mcurrentDate.set(Calendar.YEAR, selectedyear);
mcurrentDate.set(Calendar.MONTH, selectedmonth);
mcurrentDate.set(Calendar.DAY_OF_MONTH,
selectedday);
SimpleDateFormat sdf = new SimpleDateFormat(
getResources().getString(
R.string.date_card_formate),
Locale.US);

mExpireDate.setText(sdf.format(mcurrentDate
.getTime()));
}
}, mYear, mMonth, mDay);

mDatePicker.setTitle(getResources().getString(
R.string.alert_date_select));
mDatePicker.show();
}
});


plz help how do it?

Answer

Get the DatePicker from DatePickerDialog with getDatePicker(). Set the max date to current date with setMaxDate():

mDatePicker.getDatePicker().setMaxDate(System.currentTimeMillis());

Requires API level 11.

Comments