大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
假设认为写的不好请多提意见,假设认为不错请多多支持点赞.谢谢! hopy
如今我们找到了指定源中的指定日历,剩下要做的就是在日历中创建一个事件,而且设置其对于的提醒.我们能够创建2种类型的事件:单一的和循环的(或者称之为反复的).这里为了简单起见(KISS),我们仅仅创建单一的事件:
-(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); }}我们来解释下上述方法的含义:
首先设置好事件的開始和结束时间.
然后关联事件和日历.接下来创建一个提醒对象EKAlarm,并将其開始时间设置为相对于事件開始时间的前7秒钟.
使用 addAlarm:方法将提醒与该事件对象相关联.
最后我们将事件保存到日历数据库中.
我们首先在模拟器上执行一下:
能够看到提醒时间为7秒之前,最后我们在真机上执行一下:
注意在真机上执行别忘了将日历源改为iCloud,而在模拟器上日历源为Default.
$(function () {
$(‘pre.prettyprint code‘).each(function () {
var lines = $(this).text().split(‘\n‘).length;
var $numbering = $(‘