Я только что закончил создание класса сборщика календарей для клиента, и это было серьезной болью в petoot. Вам нужно очень подробно познакомиться с несколькими классами:
Nscalendar
Nsdate
Nscalendarcomponents
У Apple есть довольно хорошая документация по всем этим вопросам, но в конечном итоге вы в конечном итоге будете взламывать, особенно когда вы доберетесь до таких вещей, как летнее время и т. Д. Самая большая проблема, с которой мне приходилось сталкиваться, это то, что nsdate контейнер для времени и даты. Таким образом, вы должны нормализовать или «отвлечь» время, чтобы работать со сравнениями дат. Одна вещь, на которую стоит обратить внимание, - это создавать nsdates без времени, когда они по умолчанию устанавливаются на полночь, которая на самом деле не является полночью в дни перехода на летнее время.
Гудлак!