简体   繁体   English

使用EventKit.framework将事件存储在iPhone的本机日历中

[英]store event in native calendar of iPhone using EventKit.framework

I am trying to save event in iPhone calendar using EventKit.framework. 我正在尝试使用EventKit.framework将事件保存在iPhone日历中。 Its save perfectly, but I want to set alert to "NONE", but by default it takes '30 minutes before' as alert. 它保存得很好,但是我想将警报设置为“ NONE”,但是默认情况下它需要“ 30分钟之前”作为警报。 How can I solve this problem? 我怎么解决这个问题? Here is my code to save event in iPhone calendar 这是我在iPhone日历中保存事件的代码

if ([appDelegate.objEvent.event_alert intValue]==0) {
        alarm1 = [EKAlarm alarmWithRelativeOffset:0];
    }
    else if ([appDelegate.objEvent.event_alert intValue]==1) {
        alarm1 = [EKAlarm alarmWithRelativeOffset:-5];
    }
    else if ([appDelegate.objEvent.event_alert intValue]==2) {
        alarm1 = [EKAlarm alarmWithRelativeOffset:-300];
    }
    else if ([appDelegate.objEvent.event_alert intValue]==3) {
        alarm1 = [EKAlarm alarmWithRelativeOffset:-900];
    }
    else if ([appDelegate.objEvent.event_alert intValue]==4) {
        alarm1 = [EKAlarm alarmWithRelativeOffset:-1800];
    }
    else if ([appDelegate.objEvent.event_alert intValue]==5) {
        alarm1 = [EKAlarm alarmWithRelativeOffset:-3600];
    }
    else if ([appDelegate.objEvent.event_alert intValue]==6) {
        alarm1 = [EKAlarm alarmWithRelativeOffset:-7200];
    }
    else if ([appDelegate.objEvent.event_alert intValue]==7) {
        alarm1 = [EKAlarm alarmWithRelativeOffset:-86400];
    }
    else if ([appDelegate.objEvent.event_alert intValue]==8) {//B4 2 days
        alarm1 = [EKAlarm alarmWithRelativeOffset:-172800];
    }

    NSMutableArray *myAlarmsArray = [[NSMutableArray alloc] init];

//    [myAlarmsArray addObject:alarm1];

//    event.alarms = myAlarmsArray;
//    [myAlarmsArray release];

    if ([appDelegate.objEvent.event_alert intValue]!=0)
    {
        [myAlarmsArray addObject:alarm1];
        event.alarms = myAlarmsArray;
    }
    else
    {
//        [myAlarmsArray addObject:nil];
//        event.alarms = nil;
    }

Per the documentation, If you want an alert to fire at, as you say NONE, which i assume you mean to fire at the exact time that the event is, you would use the following code 根据文档,如果您希望警报响起,就像您所说的“无”,我认为您的意思是在事件发生的确切时间触发,则可以使用以下代码

[EKAlarm alarmWithAbsoluteDate:date];

Link to the documentation for this 链接到此文档

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM