DatePickerDialog отображает случайное число вместо выбранного месяца

Я использую DatePickerDialog, чтобы выбрать дату и отобразить ее в поле EditText, я делаю то же самое как для поля partDateEditText, так и для полей returnDateEditText. Кажется, что все работает, кроме месяца, который отображается, когда дата выбирается из DatePicker. Вместо того, чтобы возвращать выбранный месяц, он возвращает случайное число (обычно от 01 до 50) вместо месяца. Используется дата-шаблон: "дд / мм / гггг". Ниже мой код, любая помощь о том, как это исправить, будет принята с благодарностью. Я смотрел на многие другие решения этого, но я не мог найти ничего, что сработало.

    final Calendar departureCalendar = Calendar.getInstance();
    final Calendar returnCalendar = Calendar.getInstance();
    final String myFormat = getResources().getString(R.string.date_template);
    final SimpleDateFormat dateFormat = new SimpleDateFormat(myFormat, Locale.ENGLISH);

    final DatePickerDialog.OnDateSetListener departureDate = new DatePickerDialog.OnDateSetListener() {
        @Override
        public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
            departureCalendar.set(Calendar.YEAR, year);
            departureCalendar.set(Calendar.MONTH, month);
            departureCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);

            departureDateEditText.setText(dateFormat.format(departureCalendar.getTime()));
        }
    };

    final DatePickerDialog.OnDateSetListener returnDate = new DatePickerDialog.OnDateSetListener() {
        @Override
        public void onDateSet(DatePicker view, int year, int month, int dayOfMonth) {
            returnCalendar.set(Calendar.YEAR, year);
            returnCalendar.set(Calendar.MONTH, month);
            returnCalendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);

            returnDateEditText.setText(dateFormat.format(returnCalendar.getTime()));
        }
    };

    departureDateEditText.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            new DatePickerDialog(MainActivity.this, departureDate, departureCalendar.get(Calendar.YEAR),
                    departureCalendar.get(Calendar.MONTH), departureCalendar.get(Calendar.DAY_OF_MONTH)).show();
        }
    });

    returnDateEditText.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            new DatePickerDialog(MainActivity.this, returnDate, returnCalendar.get(Calendar.YEAR),
                    returnCalendar.get(Calendar.MONTH), returnCalendar.get(Calendar.DAY_OF_MONTH)).show();
        }
    });

0 ответов

Другие вопросы по тегам