NSDate数学?现在和未来的消防计时器

时间:2011-09-18 02:44:16

标签: ios nsdate nstimer nsdatecomponent

我一直绞尽脑汁寻找快速解决方案。

我需要根据特定时区的当前时间在特定时间启动NSTime。

例如,我在PST中获取当前时间:

NSDate *now = [NSDate date];

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"HH:mm:ss";

NSCalendar * cal = [[NSCalendar alloc] initWithCalendarIdentifier: NSGregorianCalendar];
[cal setTimeZone:[NSTimeZone timeZoneWithAbbreviation:@"PST"]];

NSDateComponents * comps = [cal components:NSHourCalendarUnit fromDate:now];   

我看到时间是2(14)得到[comps hour],我需要在当天下午2:30(14:30)开始计时。我需要帮助将其转换回来并进行数学计算,以确定在计时器触发之前它有多长时间。我将根据当前时间设置几个不同的计时器。当我在PST看时间时,我知道计时器和时间设置是在GMT中完成的。那是另一个转折......

提前致谢...

1 个答案:

答案 0 :(得分:1)

我自己解决了这个问题..但是感谢你提示......

if ([date earlierDate:newDate] == date) // it is before 7AM... fire at 7AM

依旧......