【问题标题】:DatePickerDialog listener - Month gets 0 [duplicate]DatePickerDialog 侦听器 - 月份为 0 [重复]
【发布时间】:2019-06-06 21:42:36
【问题描述】:

在 DatePickerDialog 上选择日期时,月份为 0。过去几周我使用了相同的代码。日期和年份工作正常。 我在互联网上搜索,一切似乎都是教程。

fun datePick (context: Context, textView: TextView){
    var calendar = Calendar.getInstance()

    var sday = calendar.get(android.icu.util.Calendar.DAY_OF_MONTH)
    var smonth = calendar.get(android.icu.util.Calendar.MONTH)
    var syear = calendar.get(android.icu.util.Calendar.YEAR)

    var listener =DatePickerDialog.OnDateSetListener { view, year, month, dayOfMonth ->
        sday = dayOfMonth
        smonth = month
        syear = year
        textView.text = "$sday/$month/$syear"  }

    var dialog =DatePickerDialog(context,listener,syear,smonth,sday)
    dialog.show()
}

【问题讨论】:

标签: java android kotlin


【解决方案1】:

在 Java 的 Calendar 类中,月份用从零开始的索引表示(一月是 0,二月是 1.. 等等)。这种行为是意料之中的,您可以轻松地调整代码以适应这种行为。有关为什么月份从零开始的更多信息,请阅读this question 的答案。

请注意,ONLY MONTHS 有这种奇怪的索引样式。一周中的每一天以及一年中的每一天都可以正常工作。

我希望这会有所帮助.. 编码愉快!

【讨论】:

    猜你喜欢
    • 2017-09-27
    • 2020-09-16
    • 2015-08-14
    • 1970-01-01
    • 1970-01-01
    • 2019-04-21
    • 2012-11-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多