大熊貓豬·侯佩原創或翻譯做品.歡迎轉載,轉載請註明出處.
假設認爲寫的很差請多提意見,假設認爲不錯請多多支持點贊.謝謝! hopy ;)數據庫
現在咱們找到了指定源中的指定日曆,剩下要作的就是在日曆中建立一個事件,並且設置其對於的提醒.咱們可以建立2種類型的事件:單一的和循環的(或者稱之爲反覆的).這裏爲了簡單起見(KISS),咱們僅僅建立單一的事件:markdown
-(void)addAlarmToCalendar:(EKCalendar*)calendar inStore:(EKEventStore*)store{
NSDate *startDate = [NSDate dateWithTimeIntervalSinceNow:60];
NSDate *endDate = [startDate dateByAddingTimeInterval:20.f];
EKEvent *event = [EKEvent eventWithEventStore:store];
event.calendar = calendar;
event.startDate = startDate;
event.endDate = endDate;
EKAlarm *alarm = [EKAlarm alarmWithRelativeOffset:-7.f];
event.title = @"Event with Alarm";
[event addAlarm:alarm];
NSError *saveError = nil;
if ([store saveEvent:event span:EKSpanThisEvent error:&saveError]) {
NSLog(@"Saved an event that fires 60 seconds from now.");
}else{
NSLog(@"Failed to save the event Error is %@",saveError);
}
}
咱們來解釋下上述方法的含義:post
首先設置好事件的開始和結束時間.
而後關聯事件和日曆.接下來建立一個提醒對象EKAlarm,並將其開始時間設置爲相對於事件開始時間的前7秒鐘.
使用 addAlarm:方法將提醒與該事件對象相關聯.
最後咱們將事件保存到日曆數據庫中.spa
咱們首先在模擬器上執行一下:翻譯
可以看到提醒時間爲7秒以前,最後咱們在真機上執行一下:code
注意在真機上執行別忘了將日曆源改成iCloud,而在模擬器上日曆源爲Default.對象