2012-02-21 6 views
0

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

Так что, когда я изменить календарь, я сделал что-то вдоль линий

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?

ответ

0

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

условии, что вы только позволяют один календарь должен быть установлен в вашем EKCalendarChooser, то вы можете сделать что-то вдоль линий:

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

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

+0

Отличный ответ - спасибо – timeview

+0

Не могли бы вы включить ответ с помощью функции множественного выбора? Я был бы очень признателен – jsetting32