【问题标题】:Disable Saturdays and Sundays from DatePicker Andorid [duplicate]从 DatePicker Andorid 禁用周六和周日 [重复]
【发布时间】:2021-06-19 11:56:32
【问题描述】:

我还需要在我的 datePicker 中禁用过去的日期和周末。我正在使用 Kotlin。

对于过去的日期,这条线工作正常

//Disable past dates
datePickerDialog.datePicker.minDate = cal.timeInMillis

https://www.freakyjolly.com/android-material-datepicker-and-timepicker-by-wdullaer-tutorial-by-example/

在此链接上,我找到了如何禁用周六和周日,但对于这一行

 datePickerDialog.setDisabledDays(disabledDays);

我没有从 datePicker 中选择 setDisabledDays 或类似选项的选项,我认为自 2019 年以来已经发生了变化(当时发布了帖子)。你知道我应该如何指定我需要禁用的日期吗?

【问题讨论】:

标签: android kotlin datepicker


【解决方案1】:

尝试改用以下内容。您必须将 Calendar 数组作为包含所有可选日期的参数传递。

datePickerDialog.setSelectableDays(Calendar[] days)

编辑:因为你没有图书馆。您需要在build.gradle中添加如下依赖项

dependencies {
    implementation 'com.wdullaer:materialdatetimepicker:4.2.3'
}

您还需要添加Java8 兼容性

android {
  ...
  // Configure only for each module that uses Java 8
  // language features (either in its source code or
  // through dependencies).
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
}

您可以在这里找到必要的信息。

https://github.com/wdullaer/MaterialDateTimePicker

【讨论】:

  • 扩展 setSeletableDays 和 setDisabledDays 不可用,这就是问题所在
  • 您使用的是什么版本的库?可以粘贴依赖吗?
  • 我只使用这个 import android.app.DatePickerDialog
  • 你需要添加库@Dipsy。这是一个自定义日期选择器。不是您导入的默认安卓系统。我正在更新答案。请检查。
  • 是的,这是有效的,谢谢!
猜你喜欢
  • 1970-01-01
  • 2010-10-04
  • 1970-01-01
  • 1970-01-01
  • 2020-11-08
  • 2018-06-08
相关资源
最近更新 更多