ошибка при использовании EKEventEditViewController - PullRequest
3 голосов
/ 20 октября 2011

У меня есть следующий код:

EKEventEditViewController *addController = [[EKEventEditViewController alloc] initWithNibName:nil bundle:nil];

EKEvent * event = [EKEvent eventWithEventStore:eventStore];

event.startDate = startDate;

event.endDate = endDate;

addController.eventStore = self.eventStore;

addController.event = event;

addController.editViewDelegate = self;

[self presentModalViewController:addController animated:YES];   
[addController release];

Он показывает мне экран для добавления события, такого как iCal, но когда я нажимаю кнопку «Готово», чтобы добавить событие, я получаю предупреждение «Это событие не принадлежит этому хранилищу событий». и в консольном журнале я получил "Calendar: unable to save: Error Domain=EKErrorDomain Code=11 " Это событие не принадлежит этому хранилищу событий. " UserInfo=0xfecb150 {NSLocalizedDescription=That event does not belong to that event store.}", но это просто происходит в iOS 5. Хорошо, с 4. Может кто-нибудь помочь мне в этом:)

Ответы [ 2 ]

4 голосов
/ 09 декабря 2011

Я получаю такое же поведение, как описано @Airsource Ltd в его ответе :

... Если я пытаюсь сохранить событие, которое имеет время начала == время окончания, то я получаю сообщение об ошибке «Дата окончания не установлена». Если затем установить другое время окончания, я получу «Это событие не принадлежит этому хранилищу событий».

Однако, похоже, это происходит только в том случае, если начальные значения события для startDate и endDate точно равны.

Это похоже на ошибку iOS 5. Мой обходной путь: сделать начальные события startDate и endDate всегда немного отличающимися, например секунда:

  if ([event.endDate isEqualToDate:event.startDate]) {
    event.endDate = [event.startDate dateByAddingTimeInterval:1.0]; // add one second
  }
0 голосов
/ 02 ноября 2011

У меня почти такая же проблема.Если я пытаюсь сохранить событие, которое имеет время начала = время окончания, то я получаю сообщение об ошибке «Дата окончания не установлена».Если затем установить другое время окончания, я получу «Это событие не принадлежит этому хранилищу событий».

Я заметил в отладчике, что обычно при отмене события подробности все еще присутствуют в EKEventEditController.event.Однако если вы отмените после ошибки «Дата окончания не установлена», событие будет содержать только время начала и окончания.Название было стерто.Моя теория заключается в том, что ссылка на eventStore также была исключена, что вызывает вторую ошибку.

Я прервал код после нажатия кнопки «ОК» на «Ошибка без даты окончания», но до нажатия кнопки «Отмена» и проверки события контроллера - но все выглядело нормально, что означает, что моя теория не может быть совершенно правильной.должно быть какое-то разъединение, появляющееся между хранилищем событий и событием для появления этой ошибки.

Я также получаю эту проблему только на iOS 5. С моим устройством iOS 4.2 все в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...