NSDateComponents *dayComponent = [[[NSDateComponents alloc] init] autorelease];
dayComponent.day = 1;
NSCalendar *theCalendar = [NSCalendar currentCalendar];
dateToBeIncremented = [theCalendar dateByAddingComponents:dayComponent toDate:dateToBeIncremented options:0];
Хорошо - я думал, что это сработает для меня.Однако, если вы используете его, чтобы добавить день к 31 марта 2013 года, он вернет дату, к которой добавлено только 23 часа.На самом деле вполне может быть 24, но при использовании в расчетах добавлено только 23:00 часов.
Аналогично, если вы перейдете к 28 октября 2013 г., код добавит 25 часов, что приведет к дате 2013 г.10-28 01: 00: 00.
Чтобы добавить день, я занимался делом сверху, добавив:
NSDate *newDate1 = [now dateByAddingTimeInterval:60*60*24*daysToAdd];
Сложно, главным образом из-за перехода на летнее время.