UIDatePicker,超过最大值和最小值的日期仍然可见

UIDatePicker, dates beyond maximum and minimum are still visible

UIDatePicker.maximumDate 的参考说明如下:

maximumDate

The maximum date that a date picker can show.

minimumDate 的参考说明了最小值的等效值。

但是在 UIDatePicker 中实现 maximumDate 和 minimumDate 时,选择器仍然显示 最大和最小日期。还有更多。实际上,UIDatePicker 显示所有日期。唯一发生变化的是,当您停止滚动时,它会自动将您滚动回 min/max 阈值。 有没有办法防止出现 minimumDate 之前的日期和 maximumDate 之后的日期?如果我将 maximumDate 设置为 2020 年 1 月 1 日,我不会 want/need 用户能够滚动到该日期之外,只是为了返回到该日期。如果他们愿意,他们可以坐在那里滚动和滚动 minutes/hours,并在 3000 年结束。当他们停止滚动时,它将恢复到 2020 年。为什么?我希望日期选择器不显示超过 min/max 的日期,并就此停止。没有超出我范围的日期。 我知道如果我自己创建 UIPicker,这是可能的,但我觉得这应该是在此元素中实现 min/max 时的默认行为。

为什么 UIDatePicker 无法做到这一点?或者是?

抱歉,UIDatePicker 不支持像您描述的那样设置有效日期范围。唯一的选择是从日历日期准备一个数组,然后将其传递给选择器。

使用 UIDatePicker 是不可能的。我建议通过使用 UIPickerView 并填充自定义值来实现您自己的日期选择器。