ios - 日历事件添加错误时间问题

标签 ios swift ekevent ekeventstore ekeventkit

我正在开发日历应用程序。

我正在尝试在默认 iPhone 日历中添加新事件。在本例中成功添加了事件,但开始时间始终在默认 iPhone 日历中设置为下午 5.30 如何解决此问题

下面附上一段代码,

 let event = EKEvent(eventStore: store)
 event.title = "calendar Name"
 event.startDate = startDate //2016-05-19 00:00:00 +0000
 event.endDate = endDate // 2016-05-19 23:59:59 +0000
 event.calendar = store.defaultCalendarForNewEvents
 do {

    try store.saveEvent(event, span: .ThisEvent, commit: true)

  } catch {

  }

最佳答案

您的设备时区似乎设置为 IST。

因此,设备日历中显示的上午 5.30 是预期行为。因为在保存开始时间时;你在格林威治标准时间保存它;注意时间里的+0000。

如果您想将事件保存为全天事件, 简单设置

event.allDay = YES

关于ios - 日历事件添加错误时间问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37297543/

相关文章:

iphone - EKEvent 事件标识符返回 null

ios - iPhone、Xcode、有效架构的重要性

objective-c - NSLocalizedString 不起作用

objective-c - ObjC 获取属性名称

ios - 如何将闭包函数的返回值设置为变量?

ios - 在 EKEvent 中为 iCal 设置特定的事件日期

ios - 对 EKEventStatus 感到困惑

ios - UILabel 子类不显示文本

ios - 如何在 Switch 语句中使用可选整数

快速序列变形