【发布时间】:2011-09-27 05:45:07
【问题描述】:
我正在使用 UIDatePickerView,就像我们可以使用“maximumDate”和“minimumDate”设置日期范围一样,有没有办法设置一天中的时间范围,比如从上午 9 点到下午 6 点?
【问题讨论】:
标签: iphone
我正在使用 UIDatePickerView,就像我们可以使用“maximumDate”和“minimumDate”设置日期范围一样,有没有办法设置一天中的时间范围,比如从上午 9 点到下午 6 点?
【问题讨论】:
标签: iphone
不是真的。 minimumDate 和 maximumDate 可以包含一天中的时间(NSDate 更像是时间戳而不是日历日期),但这仅在它们都在同一天时才有效,否则所有(时钟)时间都是可能在日期范围内。
【讨论】:
实际上你也应该使用这两个来设置时间。 NSDate 对象同时具有日期和时间组件。你应该这样做:
NSCalendar *gregorian = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDateComponents *dateComponents = [[NSDateComponents alloc] init];
//set the date using setDate: setMonth: setYear:
[dateComponents setHour:9]; //setHour:18 for maximumDate
NSDate *targetDate = [gregorian dateFromComponents::dateComponents];
[dateComponents release];
[gregorian release];
datepick.minimumDate = targetDate;
如果没有帮助,请查看以下问题:
【讨论】: