Using Time Zones Guide 显示如何检查当前日期的夏令时(DST)是否有效以及如何在夏令时更改时获取下一个日期。致电:
isDaylightSavingTime
daylightSavingTimeOffset
nextDaylightSavingTime
E.g。
Bool isDST = [[NSTimeZone systemTimeZone] isDaylightSavingTime];
但是我需要确定未来日期是否为DST,以便当用户滚动到远距离和远离日期时,他们可以看到我的图表以正确标记的时间轴绘制( GMT或BST)。
问题是 isDayLightSavingTime 似乎带有两个参数,一个是显式传递给它的(NSTimeZone),另一个是隐含的,即当前系统时间。
答案 0 :(得分:2)
您只需致电isDaylightSavingTimeForDate
,即可传递相关的NSDate
。
并不是isDaylightSavingTime
本身有两个参数 - 就是它用当前日期调用isDaylightSavingTimeForDate
。来自docs for isDaylightSavingTime
:
此方法使用当前日期作为参数调用
isDaylightSavingTimeForDate:
。
因此,只需跳过“便利”方法并调用isDaylightSavingTimeForDate
指定要检查的日期。 (我会给出一些示例代码,但是我获得Objective C语法的机会很小......)