在UiDatePicker中创建一段时间

时间:2011-10-04 21:08:21

标签: iphone uidatepicker

我遇到UiDatePicker的问题。 我想在UIDatePickerModeDateAndTime模式下创建一个UiDatePicker。 我的选择器必须有一个小时的范围,但它没有一天的范围。

例如:用户可以从选择器中选择始终为日期,但只能在8.00 - 19.00范围内选择小时。

你能帮我一个示例代码吗?

由于

2 个答案:

答案 0 :(得分:4)

正如您可以从文档中轻松看到的那样UIDatePicker无法实现。您必须自己编写日期选择器(使用UIPickerView)。

答案 1 :(得分:3)

UIDatePicker不支持此功能。 具有minimumDatemaximumDate属性,但这些属性并不能说明“上午8点到晚上7点之间的任何一天”。

您可以做的是使用2 UIDatePickers。第一个是UIDatePickerModeDate模式,第二个是UIDatePickerModeTime模式。使用第一个选择一天,第二个选择时间。用户选择后,您可以将2 NSDates转换为NSDateComponents(使用[NSCalendar currentCalendar]),然后转换-hour-minute和{来自第二个的{1}},将它交给第一个,然后将第一个转换回-second。 (所以基本上将第一个NSDate的日期信息与第二个NSDate的时间信息结合起来。

您还应该file an enhancement request原生要求此功能。