在uidatepicker中将最大日期设置为当前日期

时间:2012-07-05 13:46:19

标签: iphone ios ios5 ios4

  

可能重复:
  UIDatePicker, setting maximum and minimum dates based on todays date

我已尝试过分配,但无法为uidatepicker提供任何范围,特别是当前日期的最大范围。无论我做什么,选择器总是显示所有值。

提前致谢

2 个答案:

答案 0 :(得分:2)

这是一个可能的答案,用于设置30年前和30年后的日期选择器。

您可以更改该值的值。

NSCalendar *calendar = [[[NSCalendar alloc] 
initWithCalendarIdentifier:NSGregorianCalendar] autorelease];
NSDate *currentDate = [NSDate date];
NSDateComponents *comps = [[[NSDateComponents alloc] init] autorelease];
[comps setYear:30];
NSDate *maxDate = [calendar dateByAddingComponents:comps toDate:currentDate options:0];
[comps setYear:-30];
NSDate *minDate = [calendar dateByAddingComponents:comps toDate:currentDate options:0];

[datePicker setMaximumDate:maxDate];
[datePicker setMinimumDate:minDate];

希望这会有所帮助..

答案 1 :(得分:1)

嗯,你真的应该阅读文档。 UIDatePicker有两个属性:maximumDate和minimumDate ...它们都是NSDate对象。享受!