我试图仅在1910-2010之间显示日期选择器。我的意思是用户必须在1910年至2010年之间进行选择。我尝试了以下代码,但它无法正常工作。
日期也可以从1到31中选择,月份也可以从1月到12月选择。
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSGregorianCalendar];
NSDate *currentDate = [NSDate date];
NSDateComponents *comps = [[NSDateComponents alloc] init];
[comps setYear:-3];
NSDate *maxDate = [calendar dateByAddingComponents:comps toDate:0 options:0];
[comps setYear:1];
NSDate *minDate = [calendar dateByAddingComponents:comps toDate:0 options:0];
[self.myPicker setMaximumDate:maxDate];
[self.myPicker setMinimumDate:minDate];
请让我知道,我做错了什么。 非常感谢。
答案 0 :(得分:4)
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"yyyy-MM-dd"];
NSDate *minDate = [formatter dateFromString:@"1910-01-01"];
NSDate *maxDate = [formatter dateFromString:@"2010-12-31"];
self. myPicker.minimumDate = minDate;
self. myPicker.maximumDate = maxDate;
答案 1 :(得分:1)