3

我编写了以下代码片段来创建一个事件。设置闹钟在 iOS 4 中工作正常,但在 iOS 5 中没有设置。这是一个错误还是我错过了什么?

EKCalendar *cal = [self.eventStore defaultCalendarForNewEvents];
EKEvent *event = [EKEvent eventWithEventStore:self.eventStore];
event.calendar = cal;
// .......
EKAlarm *alarm = [EKAlarm alarmWithRelativeOffset:-3600];
event.alarms = [NSArray arrayWithObject:alarm];
// .......
4

3 回答 3

3

我有同样的错误。

问题似乎startDate不应该与endDate相同......真是愚蠢的iOS变化!

于 2011-10-26T12:17:46.047 回答
1

这似乎与这张票中发生的事情有关:EventKit - App freezes when added an EKEvent with 2 alarms (iOS 5)

如果您查看 iOS 4.3 文档的 iOS 5 更改中的 EventKit 部分,它提到某些项目已被 EKEvent 弃用。层次结构发生了变化,并添加了一个新的抽象超类:EKCalendarItem

于 2011-10-24T18:41:22.187 回答
0

避免操纵警报阵列。您需要像这样将警报添加到您的事件中:

EKAlarm *reminder = [EKAlarm alarmWithRelativeOffset:-300];
[event addAlarm:reminder];

这将在开始时间前 5 分钟添加提醒。

于 2012-11-12T16:30:28.693 回答