NSTimeInterval
на самом деле всего лишь typedef для double
.
NSDate
инкапсулирует временной интервал и предоставляет интерфейс для взаимодействия с ним.
Если вы хотите, чтобы эта дата была привязана к нашему фактическому календарю, вы должны использовать классы NSCalendar
и NSDateComponents
.
NSDateComponents *components = [[NSCalendar currentCalendar] components:NSDayCalendarUnit | NSMonthCalendarUnit | NSYearCalendarUnit fromDate:[NSDate date]];
Тогда вы можете получить данные из компонентов объекта:
components.day
components.week
// etc
Предположим, что культура майя никогда не вымерли. Этот правильный момент времени будет представлен одним и тем же объектом NSDate, но через другой NSCalendar
(например, NSMayanCalendar
) вы получите совершенно другое представление этой даты.
http://stackoverflow.com/questions/8387360/get-an-accurate-time-difference-between-two-nsdates .. – iPatel