1
我想創建一個NSDate對象,其日期設置爲當前日期,但設置爲日期選擇器中的時間的時間(因爲日期選擇器的模式是一次)。我怎樣才能做到這一點?將NSDate對象設置爲自定義日期,並結合datepicker日期?
我想創建一個NSDate對象,其日期設置爲當前日期,但設置爲日期選擇器中的時間的時間(因爲日期選擇器的模式是一次)。我怎樣才能做到這一點?將NSDate對象設置爲自定義日期,並結合datepicker日期?
如果你真的想使用自定義日期使用這樣的東西。
- (IBAction)dpChange:(UIDatePicker *)sender {
// replace this with your custom date.
NSDate *myCustomDate = [NSDate dateWithTimeIntervalSinceNow:7*24*60*60];
NSInteger dateFlags = NSYearCalendarUnit | NSMonthCalendarUnit | NSDayCalendarUnit;
NSDateComponents *dateComponents = [[NSCalendar currentCalendar] components:dateFlags fromDate:myCustomDate];
NSDate *myCustomTime = [sender date];
NSInteger timeFlags = NSHourCalendarUnit | NSMinuteCalendarUnit;
NSDateComponents *timeComponents = [[NSCalendar currentCalendar] components:timeFlags fromDate:myCustomTime];
NSDateComponents *newComponents = [[[NSDateComponents alloc] init] autorelease];
[newComponents setYear:[dateComponents year]];
[newComponents setMonth:[dateComponents month]];
[newComponents setDay:[dateComponents day]];
[newComponents setHour:[timeComponents hour]];
[newComponents setMinute:[timeComponents minute]];
[newComponents setSecond:0];
NSDate *newDate = [[NSCalendar currentCalendar] dateFromComponents:newComponents];
NSLog(@" Date: %@", myCustomDate);
NSLog(@" Time: %@", myCustomTime);
NSLog(@"Combined: %@", newDate);
}
我想你可以只使用datepicker的日期,因爲它會默認爲當前日期 – Felix 2011-01-23 15:36:49