To add an event:
================
EKEventStore *store = [[EKEventStore alloc] init];
[store requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
if (!granted) { return; }
EKEvent *event = [EKEvent eventWithEventStore:store];
event.title = @"Event Title";
event.startDate = [NSDate date]; //today
event.endDate = [event.startDate dateByAddingTimeInterval:60*60]; //set 1 hour meeting
[event setCalendar:[store defaultCalendarForNewEvents]];
NSError *err = nil;
[store saveEvent:event span:EKSpanThisEvent commit:YES error:&err];
NSString *savedEventId = event.eventIdentifier; //this is so you can access this event later
}];
To remove an event:
==================
EKEventStore* store = [[EKEventStore alloc] init];
[store requestAccessToEntityType:EKEntityTypeEvent completion:^(BOOL granted, NSError *error) {
if (!granted) { return; }
EKEvent* eventToRemove = [store eventWithIdentifier:savedEventId];
if (eventToRemove) {
NSError* error = nil;
[store removeEvent:eventToRemove span:EKSpanThisEvent commit:YES error:&error];
}
}];
----------------------------------------------
Event With Alarm Example:
=========================
EKEvent *event = [EKEvent eventWithEventStore: eventStore];
event.calendar = eventStore.defaultCalendarForNewEvents;
event.title = @"Some title";
event.allDay = YES;
event.startDate = self.date;
event.endDate = self.date;
EKAlarm *alarm = [EKAlarm alarmWithRelativeOffset:0];
event.alarms = @[alarm];
NSError *err = nil;
BOOL saved = [store saveEvent:event span:EKSpanThisEvent error:&err];
if(!saved && err){
NSLog("Error : %@", [err localizedDescription];
} else {
int eventId = event.eventIdentifier;
}
No comments:
Post a Comment