当时区发生变化时,我应该更改coredata中的NSDate数据吗?

时间:2012-10-09 09:53:31

标签: iphone nsdate

我意外地发现了这个问题。

问题是我在Newyork编写了我的应用程序,这是ALARM应用程序。我早上7点就设置闹钟。它已存储在核心数据中。

现在我在韩国。好消息是,NSNotification的时间已经改变,所以它在早上7点就被解雇了。但它在我的闹钟应用程序中显示为晚上8点。 (但顺便说一下,它在早上被解雇了,这很酷!)

这完全可以理解。我明白了因为NSDate只是数字,应该是这样的。

但似乎只有办法解决这个问题,即当用户设置时间并在coredata中更改NSDate数据时如果时区将被更改,则将时区保存在一起。

这意味着我实际上需要更改COREDATA中的NSDATE数据!!

是否有比这更酷的方式解决它像NSNotification?

由于

1 个答案:

答案 0 :(得分:0)

这似乎是一个显示问题。将时间显示为字符串并进行适当的计算时,可以确定时区。

我认为警报响起,因为您可能使用了计时器或本地通知,一旦设置好,它当然不会受到影响。

在将时间显示为字符串时,存储时区以帮助计算可能不是一个坏主意。