datePicker nur Daten in Zukunft wählbar machen

  • datePicker nur Daten in Zukunft wählbar machen

    Hallo zusammen,

    ich benutze DatePickerFragment um ein Datum auszuwählen, es ist leider möglich ein Datum auch in der Vergangenheit auszuwählen.

    kann mir einer sagen wie ich das verhindern kann. also ich will dass die Daten in der vergangenheit ausgegraut angezeigt werden.

    mein Code bis jetzt ist:

    Quellcode

    1. public void datePicker(View view){
    2. OneWayActivity.DatePickerFragment fragment = new OneWayActivity.DatePickerFragment();
    3. fragment.show(getSupportFragmentManager(), "date");
    4. }
    5. private void setDate(final Calendar calendar) {
    6. String daysArray[] = {"Sunday","Monday","Tuesday", "Wednesday","Thursday","Friday", "Saturday"};
    7. int day = calendar.get(Calendar.DAY_OF_WEEK);
    8. String selectedDay = daysArray[day-1];
    9. final DateFormat dateFormat = DateFormat.getDateInstance(DateFormat.MEDIUM);
    10. ((TextView) findViewById(R.id.tvDate)).setText(dateFormat.format(calendar.getTime()));
    11. ((TextView) findViewById(R.id.tvDay)).setText(selectedDay);
    12. }
    13. @Override
    14. public void onDateSet(DatePicker view, int year, int month, int day) {
    15. Calendar calendar = new GregorianCalendar(year,month,day);
    16. setDate(calendar);
    17. }
    18. public static class DatePickerFragment extends DialogFragment {
    19. @NonNull
    20. @Override
    21. public Dialog onCreateDialog(Bundle savedInstanceState) {
    22. final Calendar calendar = Calendar.getInstance();
    23. int year = calendar.get(Calendar.YEAR);
    24. int month = calendar.get(Calendar.MONTH);
    25. int day = calendar.get(Calendar.DAY_OF_WEEK_IN_MONTH);
    26. return new DatePickerDialog(getActivity(), (DatePickerDialog.OnDateSetListener) getActivity(),year,month,day);
    27. }
    28. }
    Alles anzeigen
  • Hi versuche mal hiermit

    https://developer.android.com/reference/android/widget/DatePicker.html schrieb:

    setMinDate(long minDate)

    Sets the minimal date supported by this NumberPicker in milliseconds since January 1, 1970 00:00:00 in getDefault() time zone.

    setMaxDate(long maxDate) Sets the maximal date supported by this DatePicker in milliseconds since January 1, 1970 00:00:00 in getDefault() time zone.
    Ein Feedback auf Tips ist auch schön. :P