日期选择器显示错误的月份

时间:2020-04-13 23:27:44

标签: android kotlin datepicker

大家可以告诉我我该怎么做才能选择正确的月份数,无论选择哪个月份,它总是在文本字段中少显示一个,例如,如果我选择了1997年1月1日并按好的,它将显示这样的日期:1997年1月0日,请告诉我该怎么办

val c = Calendar.getInstance()
        c.add(Calendar.YEAR, -18)
        val year = c.get(Calendar.YEAR)
        val month = c.get(Calendar.MONTH)
        val day = c.get(Calendar.DAY_OF_MONTH)

        val abc = findViewById<Button>(R.id.birth)

        abc.setOnClickListener {

            val datePickerDialog = DatePickerDialog(
                this,
                DatePickerDialog.OnDateSetListener { view, year, month     , day ->
                    date.setText("" + day + "/" + month + "/" + year)
                },
                year,
                month,
                day
            )
            datePickerDialog.datePicker.maxDate = c.timeInMillis
            datePickerDialog.show()

        }
    }

2 个答案:

答案 0 :(得分:0)

坐骑从零开始计数(如数组索引):

  • 一月= 0
  • 2月= 1
  • ....

如果您以正确的顺序创建一个包含挂载名称的数组,则日历给出的挂载编号就是该数组的索引。

您可以在其中添加一个以获得真实的装载。

答案 1 :(得分:0)

安装数从0开始计数。只需输入

val month = c.get(Calendar.MONTH) + 1
相关问题