我的倒数有一点问题,实际上一切正常,但是小时数格式不正确,这说明了这一点:
03:94:20:38
但是我觉得小时的真实倒数是:
03:22:20:38
我的代码:
- (void)updateCounter:(NSTimer *)tmr
{
self.dateContest.hidden = NO;
NSTimeInterval iv = [self.date timeIntervalSinceNow];
int d = iv / 86400;
int h = iv / 3600; // My problem
int m = (iv - h * 3600) / 60;
int s = iv - h * 3600 - m * 60;
self.dateContest.text = [NSString stringWithFormat:@"%02d:%02d:%02d:%02d", d, h, m, s];
if (d + h + m + s <= 0) {
[tmr invalidate];
}
}
最佳答案
您也必须减去当天的时间
int d = iv / 86400;
int h = (iv / 3600) - (d * 24);
int m = (iv - (h + d * 24) * 3600) / 60
int s = lroundf(iv) % 60
关于ios - 倒计时小时错误(NSDate和Objective-C),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35796431/