使用EKEventStore从iPhone日历中删除事件 [英] Removing events from iPhone calendar with EKEventStore
本文介绍了使用EKEventStore从iPhone日历中删除事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试图删除我从iPhone日历创建的活动。
我试过这个,但总是返回NO:
[eventStore removeEvent:event span:EKSpanThisEvent error:& err];
我创建的事件如下,它的工作原理:
eventStore = [[EKEventStore alloc] init];
event = [EKEvent eventWithEventStore:eventStore];
event.title = @EVENT TITLE;
NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@yyyy-MM-dd:HH:mm];
NSDate * date = [[NSDate alloc] init];
date = [dateFormatter dateFromString:@2010-8-15:12:30];
[date retain];
event.startDate = date;
event.endDate = [[NSDate alloc] initWithTimeInterval:600 sinceDate:event.startDate];
[event setCalendar:[eventStore defaultCalendarForNewEvents]];
NSError * err;
[eventStore saveEvent:event span:EKSpanThisEvent error:& err];
有办法删除此活动吗?
感谢,
$ b $创建事件后,我将eventIdentifier保存在数组中:<$> c $ c> [eventStore saveEvent:event span:EKSpanThisEvent error:& err];
NSString * str = [[NSString alloc] initWithFormat:@%@,event.eventIdentifier];
[arrayofCalIDs addObject:str];
要删除事件:
EKEventStore * store = [[[EKEventStore alloc] init] autorelease];
EKEvent * event2 = [store eventWithIdentifier:[arrayofCalIDs objectAtIndex:i]];
if(event2!= nil){
NSError * error = nil;
[store removeEvent:event2 span:EKSpanThisEvent error:& error];
}
[myPath release];
I'm trying to remove events that i have created from the iPhone calendar.
I tried this, but it always returns NO:
[eventStore removeEvent:event span:EKSpanThisEvent error:&err];
I created the event as follows and it works:
eventStore = [[EKEventStore alloc] init];
event = [EKEvent eventWithEventStore:eventStore];
event.title = @"EVENT TITLE";
NSDateFormatter * dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd:HH:mm"];
NSDate * date = [[NSDate alloc] init];
date = [dateFormatter dateFromString:@"2010-8-15:12:30"];
[date retain];
event.startDate = date;
event.endDate = [[NSDate alloc] initWithTimeInterval:600 sinceDate:event.startDate];
[event setCalendar:[eventStore defaultCalendarForNewEvents]];
NSError *err;
[eventStore saveEvent:event span:EKSpanThisEvent error:&err];
Is there a way to remove this event? Or it would be be better that if I try to write this event again it only modifies it instead of creating a new one.
Thanks,
解决方案
After creating the event I save the eventIdentifier in an array:
[eventStore saveEvent:event span:EKSpanThisEvent error:&err];
NSString* str = [[NSString alloc] initWithFormat:@"%@", event.eventIdentifier];
[arrayofCalIDs addObject:str];
To delete the events:
EKEventStore* store = [[[EKEventStore alloc] init] autorelease];
EKEvent* event2 = [store eventWithIdentifier:[arrayofCalIDs objectAtIndex:i]];
if (event2 != nil) {
NSError* error = nil;
[store removeEvent:event2 span:EKSpanThisEvent error:&error];
}
[myPath release];
这篇关于使用EKEventStore从iPhone日历中删除事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文