每个人
我MaterialDatePicker
用来显示日期,它工作正常,得到我想要的日期Aug 5,2021
,突然间我得到了现在这样的月份M08
,这使得日期像这样M08 5,2021
以下是gradle依赖:
implementation "com.google.android.material:material:1.3.0"
任何人都可以帮助我吗?
每个人
我MaterialDatePicker
用来显示日期,它工作正常,得到我想要的日期Aug 5,2021
,突然间我得到了现在这样的月份M08
,这使得日期像这样M08 5,2021
以下是gradle依赖:
implementation "com.google.android.material:material:1.3.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
}