Hitesh Kamani
Hitesh Kamani

Reputation: 933

How to set Date Picker For Past Date

I am working on one of my android projects in which I need date picker dialog. I have done following code for that.

private void setDateTimeField() {

    Calendar newCalendar = Calendar.getInstance();

    firstMemberDatePickerDialog = new DatePickerDialog(getActivity(), new OnDateSetListener() {

        public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
            Calendar newDate = Calendar.getInstance();
            newDate.set(year, monthOfYear, dayOfMonth);
            BootstrapEditTextDob.setText(dateFormatter.format(newDate.getTime()));
        }

    },newCalendar.get(Calendar.YEAR), newCalendar.get(Calendar.MONTH), newCalendar.get(Calendar.DAY_OF_MONTH));

}

Now when user open date picker dialog it should be past date 18 years back. how to achieve this?

Upvotes: 0

Views: 715

Answers (1)

Praseeda t
Praseeda t

Reputation: 136

To set to a past date use the code below

  int no_of_years_past=18;

   Calendar calendar = Calendar.getInstance();
                    int year = calendar.get(Calendar.YEAR);
                    int month = calendar.get(Calendar.MONTH);
                    int day = calendar.get(Calendar.DAY_OF_MONTH);

    firstMemberDatePickerDialog = new DatePickerDialog(getActivity(), new OnDateSetListener() {

    public void onDateSet(DatePicker view, int year, int monthOfYear, int dayOfMonth) {
        Calendar newDate = Calendar.getInstance();
        newDate.set(year, monthOfYear, dayOfMonth);
        BootstrapEditTextDob.setText(dateFormatter.format(newDate.getTime()));
    }

    },year-no_of_years_past, month, day);

you can use the same to set month or day

Upvotes: 1

Related Questions