将最短日期设置为UIDatePicker

时间:2010-12-14 06:51:54

标签: iphone uidatepicker

我在UILabel约会(如'2010年12月14日)。这个日期我想设置为我的UIDatepicker的最小日期。我该怎么办才能回复?

由于 NISHANT

4 个答案:

答案 0 :(得分:14)

使用NSDateFormatter将您的UILabel文本转换为日期格式,并将该值替换为以下示例中的“Date”:

UIDatepicker *datePicker;

NSDate *Date=[NSDate date];

datePicker.minimumDate=Date;

答案 1 :(得分:3)

您可以使用NSDateFormatter并使用setDateFormat方法设置日期格式。

[formatter setDateFormat:@"MMM dd,yyyy"];

NSDate *date = [formatter dateFromString:lblDate.text];

datePicker.minimumDate=date;

答案 2 :(得分:0)

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

        [datePicker setMaximumDate:maxDate];
        [datePicker setMinimumDate:minDate];
它显示了五年的日期.......

答案 3 :(得分:0)

查看从当前日期到一个月的最短时间:

NSDate* currentTime = [NSDate date];

[datePicker setMinimumDate:[currentTime dateByAddingTimeInterval:43200]];//min time +12:00 for the current date

[datePicker setMaximumDate:[currentTime dateByAddingTimeInterval:2592000]]; // max day (+ 30 )