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

Я настроил EKCalendarChooser, чтобы позволить пользователю выбирать календарь, и я настроил протокол EKCalendarChooserDelegate для проверки выбора. Я получаю calendarChooserDidFinish с результатами, но я все еще не понимаю, как перейти на календарь. Я вижу свойство 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 ответ

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

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

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

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

Другие вопросы по тегам