Прежде всего: хочу сказать счастливый новый год всем, кто это читает! Май 2015 года - отличный год для всех нас :-).Разница во времени Xcode в днях, часах, минутах и секундах
Я занят выполнением функции, которая вычисляет разницу во времени между двумя датами. Точнее: время между датой и датой и текущим временем и датой. Таким образом, пользователь выбирает дату в прошлом, а затем программа показывает разницу во времени между указанной датой и текущей датой в таймере: «hh: mm: ss»
Работает нормально и обновляется каждую секунду, когда я выбираю время сегодняшней даты (01-01-2015 10:00:00), но при выборе даты и времени в прошлом (31-12-2014 17:00:00) и сравните его с сегодняшней датой, когда время раньше, чем вчера (01-01-2015 14:01:01), это дает мне отрицательное время, как своего рода таймер обратного отсчета: -2: -59: -59.
Но я хочу, чтобы он показывал противоположное: 21:01:01 и, если возможно, если он превышает 24:00:00, просто рассчитывайте. Например, 25:12:39.
Это код, который вычисляет разницу:
NSDateFormatter *df = [[NSDateFormatter alloc] init];
[df setDateFormat:@"dd-MM-YYYY HH:mm:ss"];
NSDate *date1 = [df dateFromString:[NSString stringWithFormat:@"30-12-2014 %@", startedTime]];
NSDate *date2 = [df dateFromString:[NSString stringWithFormat:@"31-12-2014 %@", [self getCurrentTime]]];
NSTimeInterval interval = [date2 timeIntervalSinceDate:date1];
int hours = (int)interval/3600; // integer division to get the hours part
int minutes = (interval - (hours*3600))/60; // interval minus hours part (in seconds) divided by 60 yields minutes
int seconds = (interval - (hours*3600) - (minutes*60)); // interval minus hours part (in seconds) divided by 60 yields minutes
NSString *timeDiff = [NSString stringWithFormat:@"%02d:%02d:%02d", hours, minutes, seconds];
_workingTime.text = [NSString stringWithFormat:@"%@",timeDiff];
Может кто-то пожалуйста, помогите?
Вы удивительным. Не могу поверить, что я этого не видел. Особенно первая часть. Спасибо, что работает сейчас! –