从UIDatePicker中删除“今天”条目

在iOS SDK中使用UIDatePicker时,在当前日期始终存在“今天”条目。 这在大多数情况下很有用,但在我需要它的地方,它却相当令人困惑。

有办法:

a) 禁用“今天”-entry (改为使用常规日期),并使所有条目看起来都一样

甚至更好

b) 禁用“今天”-entry (改为使用常规日期),并在第二天用蓝色着色

此外,该应用程序仅供私人使用,它不会在AppStore上分发,这意味着我可以使用私有API(我仍然宁愿避免它们),我不需要它向后兼容。 iOS 4很好。

我有一个类似的问题, UIDatePicker不完全匹配我的要求(在我的情况下,我需要一个没有年轮的datepicker)。 看一下UIDatePicker引用 ,看起来你不能禁用今天的条目,所以你可能会被迫做我做的事情。

我使用了UIPickerView并重新实现了我需要的日期选择function。 要实现自定义日期选择器,您需要执行以下操作:

  • 实现UIPickerViewDataSource以设置行标题,维度和行数。
  • 实现UIPickerViewDelegate以处理来自自定义选择器的事件。
  • 确保在月轮更改时更新日轮,以便每月获得适当的日期。 UIDatePicker非常无缝地完成这项工作。 在有限的时间内,我只是在月份变化时重新加载选择器,以便日期计数匹配。

我知道答案已被接受,但如果你显示日期和时间,实际上有一种方法可以做到这一点。 它是一个黑客但它的工作原理。 只需在今年以外的一年播种选择器,“今天”将消失,并被规范日期取代。