Как использовать результаты из iOS EKCalendarChooser для перехода на выбранный календарь? - PullRequest
0 голосов
/ 21 февраля 2012

Я настроил EKCalendarChooser, чтобы позволить пользователю выбирать календарь, и я настроил протокол EKCalendarChooserDelegate, чтобы проверить выбор. Я получаю календарьChooserDidFinish с результатами, но я все еще не ясно, как перейти к календарю. Я вижу свойство selectedCalendars, но, полагаю, я ожидал, что можно установить способ выбора Календаря, установив eventStore или идентификатор - возможно, я использую возвращаемый NSSet?

Поэтому, когда я меняю Календарь, я делал что-то вроде

  self.defaultCalendar = [self.eventStore calendarWithIdentifier:identifier];

или идентификатор создания нового календаря

    self.defaultCalendar = [EKCalendar calendarWithEventStore:eventStore];
    self.defaultCalendar.title = @"Demo calendar";
    self.defaultCalendar.source = localSource;
    [eventStore saveCalendar:self.defaultCalendar commit:YES error:nil];

Как перейти на новый выбранный календарь из EKCalendarChooser?

1 Ответ

0 голосов
/ 22 февраля 2012

Если я правильно понял вашу проблему, то вы ищете, как настроить календарь при получении свойства calendarChooser.selectedCalendars в методе делегата?

При условии, что в вашем EKCalendarChooser можно установить только один календарь, вы можете сделать что-то вроде:

- (void)calendarChooserSelectionDidChange:(EKCalendarChooser *)calendarChooser
{
    EKCalendar *newCalendar = [calendarChooser.selectedCalendars anyObject];
}

Если вы разрешите выбрать более одного календаря, вам нужно будет выполнить цикл по NSSet.

...