I have an NSDate
and a duration. I need to get the time after the duration
Given:
The date is \"2010-02-24 12:30:00 -1000\"
duration is 3600
For those looking for a Swift 3.x version:
let newDate = Date.init(timeInterval: 2600, since: oldDate)
You want the class method dateWithTimeInterval:sinceDate:
which takes the starting date and the interval NSDate docs
As DyingCactus states, you can use the addTimeInterval method of NSDate, but depending on the OS version is will create a compiler warning, since it is deprecated in 10.6 as of 2009-08-17.
The current recommended method is to use dateByAddingTimeInterval on NSDate:
NSDate *newDate = [oldDate dateByAddingTimeInterval:3600];
Note that if you are targeting 10.5 or earlier, the original answer will work.
You can use the addTimeInterval instance method of NSDate:
NSDate *newDate = [oldDate addTimeInterval:3600];
Edit: As Chip Coons correctly points out, this method has been deprecated. Please use one of the other methods instead.
Instead of using the deprecated addTimeInterval method, you can use the newer dateByAddingTimeInterval instance method of NSDate.
NSDate *newDate = [oldDate dateByAddingTimeInterval:2500];