2016-03-02 50 views
0

我必須將自定義日期和時間設置爲UIDatePicker 最短日期:當前日期時間, 最大日期:直到明天晚上。在目標C中設置UIDatePicker的自定義日期和時間

如: 今天是3月2日以後,最大日期應爲3月3日下午11:59

我想:

-(NSDate *) getTomorrowDate { 

    NSDateComponents *dayComponent = [[NSDateComponents alloc] init]; 
    dayComponent.day = 1; 
    dayComponent.hour = 23; 
    dayComponent.minute = 59; 
    NSCalendar *theCalendar = [NSCalendar currentCalendar]; 
    NSDate *nextDate = [theCalendar dateByAddingComponents:dayComponent toDate:[NSDate date:[NSDate date] withFormat:@"yyyy-MM-dd hh:mm:ss"] options:0]; 

    return nextDate; 
} 

但其返回3月4日也,請大家指正!

謝謝。

回答

1

這是一個解決方案,它增加兩天,剝離時間部分和減去一秒鐘。

- (NSDate *)getTomorrowDate { 
    NSCalendar *calendar = [NSCalendar currentCalendar]; 
    // add two days 
    NSDate *dayAfterTomorrow = [calendar dateByAddingUnit:NSCalendarUnitDay value:2 toDate:[NSDate date] options:0]; 
    // get start of the day 
    NSDate *startOfDayAfterTomorrow = [calendar startOfDayForDate:dayAfterTomorrow]; 
    // subtract one second. 
    return [calendar dateByAddingUnit:NSCalendarUnitSecond value:-1 toDate:startOfDayAfterTomorrow options:0]; 
} 
+0

感謝vadian,它的工作! –

相關問題