Я использую следующий код, чтобы получить месяцы правильно .... он возвращает правильные данные .. но он дает 2 месяца, когда я получаю от двух дат ... предположим, если я дам две даты, такие как janauary для марша, это будет дают 2 месяца ... как не могу я изменить, чтобы не дни точно (входят в Феврале) ...изменить месяцы на точные дни?
NSCalendar *sysCalendar = [NSCalendar currentCalendar];
unsigned int unitFlags = NSSecondCalendarUnit | NSHourCalendarUnit | NSMinuteCalendarUnit | NSDayCalendarUnit | NSMonthCalendarUnit;
NSDateComponents *breakdownInfo = [sysCalendar components:unitFlags fromDate:date1 toDate:date2 options:0];
NSLog(@"Break down: %dmons", [breakdownInfo month]);
это дает неправильный ответ ... месяц возвращает 2 .. но дни возвращаются только 13 после того, как я осуществил ваш путь ... t –
Я думаю, что вы делаете что-то не так. Если вы установите только дневной блок, только поле дня будет содержать допустимое значение. Другие поля просто случайны, поэтому вы не можете их использовать. Когда я просто устанавливаю блок дня, сравнивая два дня, которые составляют один месяц, я получаю, например, 30 в дневном поле. – Rhult