如何从iPhone应用程序获取所有日历及其事件?

6

祝您好日子。我在我的应用程序中使用了iCal事件。我已经向iCal添加了事件,并从我的示例iPhone应用程序中检索/删除了iCal中的事件。现在,我想显示所有在他们的iPhone上同步的日历(例如:Google日历)。然后我想从除iCal之外的其他日历检索事件。如何获取iPhone上的所有同步日历?我在Google中尽力搜索,但是找不到正确的答案。您能帮我吗?先谢谢您。


这段代码不起作用。你能告诉我如何获取 iPhone 日历中的事件以及如何清除所有事件吗? - Ravi Kumar Karunanithi
请告诉我,您从哪里下载了ical示例代码,Yuvaraj.M。 - Hitendra
2个回答

8

感谢您查看我的问题。我已经找到了解决方案。我只是使用 EKEventStore 检索日历,并使用其中的 EKCalendar。以下是我的代码,

EKEventStore *eventStore = [[[EKEventStore alloc] init] autorelease]; 
EKEvent *events = [EKEvent eventWithEventStore:eventStore];
NSArray *caleandarsArray = [[NSArray alloc] init];
caleandarsArray = [[eventStore calendars] retain]; 

 for (EKCalendar *iCalendars in caleandarsArray) 
 {
     NSLog(@"Calendar Title : %@", iCalendars.title);

 }

这段代码对我有效。谢谢。


2
这段代码不起作用。你能告诉我如何获取 iPhone 日历中的事件以及如何清除所有事件吗? - Ravi Kumar Karunanithi

4
上面的代码正在分配一个新数组,并使引用指向不同的数组。这不是内存泄漏吗?
NSArray *caleandarsArray = [[NSArray alloc] init];
caleandarsArray = [[eventStore caleandarsArray] retain];

这更为优化。
NSArray *caleandarsArray = [[eventStore caleandarsArray] retain];

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接