アプリをほぼ完成させたところですが、ベータ テストでストップウォッチ部分にバグが見つかりました... ストップウォッチは nstimer を使用してカウントを行い、ラップを保存するためのテーブルを持っていますが、ラップ テーブルをスクロールすると時計が停止または一時停止します失われた時間を取り戻せません。
これは、以下を使用して停止していました。
startingTime = [[NSDate date] timeIntervalSince1970];
経過時間を計算します。
しかし、私はまだ NSTimer を使用して 0.1 秒ごとにトリガーしています。これは、経過時間が最後に正しく更新されても、スクロールによってタイマーが停止することを意味します...これを Apple ストップウォッチと比較すると、ストップウォッチには、経過時間をカウントするためだけの別のスレッドがあります。それがどのように行われるかを誰かが知っていますか?
現在、エポック以降の時間を使用することは、ある意味ではうまく機能していますが、ストップウォッチの開始、停止、再起動の問題が複雑になります
時計が停止すると、時間が保存され、時計が再起動されたときのオフセットを計算するために使用されますが、遅延が発生しているようで、時計を再起動すると時間が目に見えて進みます。
根本的な原因または解決策に向けた考えは大歓迎です。