CloudKit正确接收和存储时间,returns查询时的UTC时间

CloudKit receives and stores time correctly, returns UTC Time when queried

我向我的 iCloud 容器发送了一个本地日期,但是当我查询它时,它 returns 是一个 UTC 日期,有人知道如何更改吗?

仪表板上的日期似乎也不一致。如您所见,在数据列表中,时间是本地时间。当我单击它并滚动到时间 属性 时,它是 UTC。

来自Date documentation

A specific point in time, independent of any calendar or time zone.

因此,当您从 iCloud 查询日期时,我很确定您得到的是正确的日期,因为它没有任何时区,因此在显示时它取决于格式化程序的 locale/time 时区它。

您在记录列表中看到的日期是您系统的语言环境和时区的日期格式。您在打开记录详细信息时看到的日期是同一时间点,但显示为 UTC 日期。

例如我住在波兰,我的时区是 UTC+2,所以对我来说,相同的日期(时间点)显示在仪表板中,如下所示: