試圖從給定的NSTimeInterval製作倒數計時器,標籤似乎沒有更新。我的倒數計時器方法有什麼問題?
- (IBAction)startTimer:(id)sender{
timer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(timerAction:) userInfo:nil repeats:YES];
}
- (void)timerAction:(NSTimer *)t {
if(testTask.timeInterval == 0){
if (self.timer){
[self timerExpired];
[self.timer invalidate];
self.timer = nil;
}
else {
testTask.timeInterval--;
}
}
NSUInteger seconds = (NSUInteger)round(testTask.timeInterval);
NSString *string = [NSString stringWithFormat:@"%02u:%02u:%02u",
seconds/3600, (seconds/60) % 60, seconds % 60];
timerLabel.text = string;
}
testTask由用戶指定的,我一直在一個任務10秒的時間間隔測試它。它顯示了10秒,但沒有顯示任何變化。 – EvilAegis
並且時間間隔永遠不會實際減少 – EvilAegis
您是否在timerAction方法中放置了斷點?它實際上被稱爲?剛剛嘗試過 –