iPhone 日历和时区 (EventKit)

Posted

技术标签:

【中文标题】iPhone 日历和时区 (EventKit)【英文标题】:iPhone calendar and time zones (EventKit) 【发布时间】:2010-12-16 16:05:33 【问题描述】:

iPhone 上的时区处理让我有些困惑。就向设备日历添加新的 EKEvent 而言,看起来您总是只需在本地时间设置开始/结束时间,我们不需要使用时区或偏移量。这是真的吗?

我假设设备在输入时知道时区。当您查看设备的设置/邮件、通讯录、日历并滚动到底部以查看时区数据时,就会出现混乱。是否有时区支持ON/OFF、设置时区等。

因此,如果我在加利福尼亚并向设备添加一个事件,并且时区设置为“纽约”并且时区支持已开启,那么 EKEvent 实际会在什么时间显示?

有没有人通过 EventKit 处理过 ios 日历并学习过有关时区处理的课程?还是直截了当,只需使用当地时间并进入活动,其余的由设备来处理?

谢谢。

【问题讨论】:

【参考方案1】:

NSDate 没有时区,它们使用 UTC (AFAIK)。如果您需要从/到某个时区进行转换,请使用NSCalendar。我想 Mail 和朋友需要对来自外部来源的日期进行明确的时区处理。

【讨论】:

以上是关于iPhone 日历和时区 (EventKit)的主要内容,如果未能解决你的问题,请参考以下文章

EventKit 日历的最后一个事件

在 iOS EventKit 上以编程方式在线获取/更新谷歌日历数据

Swift 4.0 Eventkit 无法正确获取日历和事件

使用 EventKit 添加事件和日历

iOS - 无法使用 EventKit 将日历事件添加到 Gmail 日历

如何访问 iPhone 的日历以便获取会议的与会者