同じ UIViewController で、NSTimer によって 0.01 秒ごとに更新される UILabel が 1 つあります。同じコントローラーには、別の .nib からの TableController を含む UIView があります。
テーブルをスクロールすると、スクロールが完了するまで UILabel の更新が停止します。そのためのアイデアはありますか?
前もって感謝します。
同じ UIViewController で、NSTimer によって 0.01 秒ごとに更新される UILabel が 1 つあります。同じコントローラーには、別の .nib からの TableController を含む UIView があります。
テーブルをスクロールすると、スクロールが完了するまで UILabel の更新が停止します。そのためのアイデアはありますか?
前もって感謝します。
「NSRunLoopCommonModes」または「UITrackingRunLoopMode」モードでタイマーを登録する必要があります。
NSTimer *timer = [NSTimer scheduledTimerWithTimeInterval:1 target:self selector:@selector(timer) userInfo:nil repeats:YES];
[[NSRunLoop mainRunLoop] addTimer:timer forMode:NSRunLoopCommonModes];
- (void)timer
{
label.text = @"different text";
}
また、NSRunLoopクラスリファレンス、スレッドプログラミングガイドおよび同時実行プログラミングガイドをお読みください。
ラベル更新コードをスレッドに入れます..問題を解決するはずです。