カウントダウンタイマーを備えたアプリケーションがあります。この方法でタイマーから呼び出される関数で更新されるラベルで作成しました。
...
int timeCount = 300; // Time in seconds
...
NSTimer *myTimer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(actualizarTiempo:) userInfo:nil repeats:YES];
...
- (void)actualizaTiempo:(NSTimer *)timer {
timeCount -= 1;
if (timeCount <= 0) {
[timer invalidate];
} else {
[labelTime setText:[self formatTime:timeCount]];
}
}
注: formatTime は、整数 (秒数) を受け取り、mm:ss 形式の NSString を返す関数です。
つまり、時間はカウントダウンしますが、問題は、アプリケーションに UITableView があり、テーブルに触れて (セルに沿って移動するために) ドラッグすると、画面から指を離すまでタイマーが停止することです。 ...
この動作は正常ですか?もしそうなら、テーブルをドラッグしている間、それを避けてタイマーを動作させる方法はありますか?