0

每个人

MaterialDatePicker用来显示日期,它工作正常,得到我想要的日期Aug 5,2021,突然间我得到了现在这样的月份M08,这使得日期像这样M08 5,2021

在此处输入图像描述

以下是gradle依赖:

implementation "com.google.android.material:material:1.3.0"

任何人都可以帮助我吗?

4

2 回答 2

0

我发现了这个问题。这是一个本地化问题,需要在使用材料日期选择器之前对其进行本地化验证。

于 2021-08-09T10:36:59.923 回答
0

你可以试试这段代码

    private fun showDatePicker() {
        val selectedDateInMillis = currentSelectedDate ?: System.currentTimeMillis()
        
        MaterialDatePicker.Builder.datePicker().setSelection(selectedDateInMillis).build().apply {
            addOnPositiveButtonClickListener { dateInMillis -> onDateSelected(dateInMillis) }
        }.show(supportFragmentManager, MaterialDatePicker::class.java.canonicalName)
    }

    // result onDateSelected    
    private fun onDateSelected(dateTimeStampInMillis: Long) {
        currentSelectedDate = dateTimeStampInMillis
        val dateTime: LocalDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(currentSelectedDate), ZoneId.systemDefault())
        val dateAsFormattedText: String = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd"))
        // view for result
        findViewById<TextView>(R.id.output).text = dateAsFormattedText
   }
于 2021-08-06T03:40:12.580 回答