当前位置: 代码迷 >> Android >> 如何启用setCalendarViewShown或禁用datepicker post API 24中的日历
  详细解决方案

如何启用setCalendarViewShown或禁用datepicker post API 24中的日历

热度:45   发布时间:2023-08-04 11:42:47.0

我有一个项目,在该项目中我使用datepicker为用户确认日期

当用户选择确认时,我希望禁用日期选择器,以便他们无法再次使用它

不幸的是,当我做这样的事情:

((DatePicker)findViewById(R.id.datepicker)).enabled = false;

仅微调框部分被禁用,而日历仍可被触摸并用于更改微调框

我发现的唯一解决方案是在用户确认后使用setCalendarViewShown(false),然后禁用选择器

不幸的是,这似乎已被弃用,所以我希望找到一些替代它的方法

所以我的问题是

有没有办法以编程方式禁用DatePicker的所有部分或隐藏日历?

我知道可以通过xml完成??,但我希望在代码中使用它

预先感谢您可以提供的任何帮助

您可以使用以下方法隐藏日期选择器:

datepicker.setVisibility(View.INVISIBLE);

您可以选择禁用所有日期少于一个的选项,就是将这两行合并。

datepicker.setMinDate
datepicker.setMaxDate

因此,在用户选择一个日期之后,将日期设置为日历的最小值和最大值,这样,用户将无法选择新的日期。

就像是:

datepicker.setMinDate(theDatePickedByUser)
datepicker.setMaxDate(theDatePickedByUser)

应该可以...

  相关解决方案