カウントダウンタイマー付きのアプリケーションがあります。私はこのようタイマーから呼び出された関数で更新されたラベルでそれを作った:UITableViewをドラッグしているときにNSTimerが機能しない
...
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は整数(秒数)を受信する機能をあり、フォーマットミリメートルでNSStringのを返します。 :ss
すべてが正常に動作しますが、時間はカウントダウンされますが、アプリケーションにUITableViewがあり、テーブルに触れてドラッグして(セルに沿って移動する)タイマーが停止するまで画面から指を離してください...
この動作は正常ですか?そうであれば、それを避けてテーブルをドラッグしながらタイマーを動作させる方法はありますか?
ありがとうございました、このソリューションで動作します。私はループモードを詳しく見て、私のイベントによく合ったものを手に入れようとします – rai212
'' [timer invalidate]; '' viewWillDisappear'や他の方法では忘れないでください。 。 – skornos