だから私はNSTimerを持っていて、タイマーを一時停止して再生するために日付フォーマッタを使用していますが、タイマーを開始すると、00:00:00に開始したいときに07:00:00に開始します。
私のタイマーコードは
-(void) updateTimer {
NSDate *currentDate = [NSDate date];
NSTimeInterval timeInterval = [currentDate timeIntervalSinceDate:startDate];
NSDate *timerDate = [NSDate dateWithTimeIntervalSince1970:timeInterval];
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
dateFormatter.dateFormat = @"hh:mm:ss";
//[dateFormatter setTimeZone:[NSTimeZone timeZoneForSecondsFromGMT:0.0]];
NSString *timeString = [dateFormatter stringFromDate:timerDate];
hhmmssLabel .text = timeString;
pauseTimeInterval = timeInterval;
}
-(void)pauseTimer {
[tickerTimer invalidate];
tickerTimer = nil;
[self updateTimer];
}
-(void) unPauseTimer {
startDate = [NSDate date] ;
startDate = [startDate dateByAddingTimeInterval:((-1)*(pauseTimeInterval))];
tickerTimer = [NSTimer scheduledTimerWithTimeInterval:1.0/1.0 target:self selector:@selector(updateTimer) userInfo:nil repeats:YES];
}
タイムゾーンに関係していると思いますので、コメントアウトしましたが役に立ちませんでした。00:00:00 に開始できません