是否可以从我的cocoa应用程序向iCal添加事件?我尝试使用CalCalendarEvent,但它没有在我的日历中添加任何内容。
CalCalendarStore *calStore = [CalCalendarStore defaultCalendarStore];
CalEvent *event = [CalEvent event];
CalRecurrenceRule *recRule = [[CalRecurrenceRule alloc] initYearlyRecurrenceWithInterval:1 end:[CalRecurrenceEnd recurrenceEndWithOccurrenceCount:5]];
[event setRecurrenceRule:recRule];
[event setStartDate:currentDate];
[event setEndDate:endDate];
event.isAllDay = YES;
[calStore saveEvent:event span:CalSpanThisEvent error:NULL];
感谢。
答案 0 :(得分:4)
我认为你错过了一个CalCalendar
对象
最小CalEvent
看起来像:
CalEvent * event = [CalEvent event]; event.calendar = calendar; //这很重要 - 否则该事件不会出现在iCal中 event.title = title; event.startDate = startDate; event.endDate = endDate;
您还可以检查saveEvent
的NSError
更新:正如Mike Abdullah在评论中指出的那样,NSError应为handled with care。