1
現在の日付として設定されているが、datepickerの時刻として設定されている時刻を持つNSDateオブジェクトを作成したいとします(datepickerのモードは時刻です)。これどうやってするの?NSDateオブジェクトをdatepicker dateと組み合わせたカスタム日付に設定しますか?
現在の日付として設定されているが、datepickerの時刻として設定されている時刻を持つNSDateオブジェクトを作成したいとします(datepickerのモードは時刻です)。これどうやってするの?NSDateオブジェクトをdatepicker dateと組み合わせたカスタム日付に設定しますか?
実際にカスタム日付を使用する場合は、このようなものを使用してください。
- (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