目前,GMT-0700(美国/太平洋地区)已处于夏令时

但我从NSTimeZone收到“否”

NSTimeZone *timeZone = [NSTimeZone timeZoneForSecondsFromGMT:secondsFromGMT]; //Getting timezone as GMT-0700
BOOL isDaylightSavingTime = [timeZone isDaylightSavingTime]; //getting boolean value as NO


如何解决这个问题?

要求:我想知道,我的接收器是否在使用dayLightSavingTime。我只会得到接收器偏移值。我必须支持不同的timezones()。什么是最好的方法?

最佳答案

timeZoneForSecondsFromGMT不够具体。

最准确的方法是使用(完整)区域名称创建时区:

NSTimeZone* timeZone = [NSTimeZone timeZoneWithName:@"America/Los_Angeles"];

10-02 22:01