选择日期后,显示错误的月份

Kir*_*lvi 1 android datepicker

我正在使用 datepicker,但是每当我选择任何日期时,它都会显示 -1 个月。例如-如果我选择 12/12/2016,它将显示在文本框中 12/11/2016 如果我选择 3/1/2017,它将显示 3/0/2017

这是我的日期选择器对话框代码:

editStartDate.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View v) {
                    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(TourActivity.this, new DatePickerDialog.OnDateSetListener() {
                        public void onDateSet(DatePicker datepicker, int selectedyear, int selectedmonth, int selectedday) {
                            Calendar newDate = Calendar.getInstance();
                            newDate.set(selectedyear, selectedmonth, selectedday);
                            editStartDate.setText(selectedday + "/" + selectedmonth + "/" + selectedyear);
                        }
                    }, mYear, mMonth, mDay);
                    mDatePicker.setTitle("Select date");
                    mDatePicker.show();

                }
            });
Run Code Online (Sandbox Code Playgroud)

请建议我在哪里放置错误的代码。

Nin*_*rry 6

在这种情况下,月份计数从 0 开始。因此您必须添加 1 才能显示。

  editStartDate.setText(selectedday + "/" + (selectedmonth + 1) + "/" + selectedyear);
Run Code Online (Sandbox Code Playgroud)

另请参阅此问题以供参考:为什么 Java 日历中的一月是 0?