我按照这个回答:how do I create a new EKCalendar on iOS device?
但是我创建的日历没有出现在iPhone手机日历中。应该吗?
也许我有点困惑? :)
代码正常,我可以记录日历等......
答案 0 :(得分:4)
我发现了另一种更简单且可能更强大的方法。 只需使用新日历的默认日历源。
EKSource *theSource = [eventStore defaultCalendarForNewEvents].source;
答案 1 :(得分:3)
我找到了解决方案。问题是,当iCloud日历打开时,它会从日历应用程序中隐藏本地创建的日历。要绕过此问题,解决方案是向iCloud源添加新日历:
for (EKSource *source in self.eventStore.sources)
{
if (source.sourceType == EKSourceTypeCalDAV && [source.title isEqualToString:@"iCloud"])
{
localSource = source;
break;
}
}
if (localSource == nil)
{
for (EKSource *source in self.eventStore.sources)
{
if (source.sourceType == EKSourceTypeLocal)
{
localSource = source;
break;
}
}
}
答案 2 :(得分:0)
我最近也遇到过同样的问题。 看来,打开iCloud日历会隐藏日历应用程序中本地创建的日历。 除了关闭然后关闭iCloud日历之外,我没有其他解决方案。 如果我发现其他任何事情,我会报告。