【问题标题】:EKCalendar doesn't appear in calendar.appEKCalendar 未出现在 calendar.app 中
【发布时间】:2012-02-14 09:12:37
【问题描述】:

我关注了这个答案:how do I create a new EKCalendar on iOS device?

但我创建的日历没有出现在 iPhone 的 calendar.app 中?应该吗?

也许我有点困惑? :)

代码正在运行,我可以记录日历等...

【问题讨论】:

    标签: ios xcode ios5


    【解决方案1】:

    我发现另一种方法更简单,可能更健壮。 只需为您的新日历使用默认日历的来源即可。

    EKSource *theSource = [eventStore defaultCalendarForNewEvents].source;
    

    来源:https://stackoverflow.com/a/13991658/921573

    【讨论】:

      【解决方案2】:

      我找到了解决方案。问题是当 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;
                  }
              }
          }
      

      【讨论】:

      • 我们无法找到一种方法来判断用户是否在创建 iCloud 日历后关闭了 iCloud 日历并返回应用程序。即使 iCloud Cal 在“设置”中已关闭,它仍会在此检查中显示为可用的日历源。有什么建议吗?
      【解决方案3】:

      我最近也遇到了同样的问题。 似乎打开 iCloud 日历会隐藏日历应用程序中本地创建的日历。 除了关闭然后关闭 iCloud 日历之外,我没有其他解决方案。 如果有其他发现,我会回来报告。

      【讨论】:

        猜你喜欢
        • 2012-12-06
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多