iOS9中怎樣在日曆App中建立一個隨意時間以前開始的提醒(三)

大熊貓豬·侯佩原創或翻譯做品.歡迎轉載,轉載請註明出處.
假設認爲寫的很差請多提意見,假設認爲不錯請多多支持點贊.謝謝! 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.對象

相關文章
相關標籤/搜索