2

私はマルチビューアプリに取り組んでいます。ビューの 1 つはテーブル ビューです。各セルにはストップウォッチがあります。ストップウォッチには NSTimer を使用する予定です。ユーザーがビューを切り替えて後で戻ってきた場合でも、タイマーが正しく機能するようにマルチスレッドを実装する必要がありますか? 私は調査を行いましたが、チュートリアルのほとんどは単一のビューで 1 つの NSTimer をカバーしています。タイマーの実行中に、インターフェイスやナビゲーションなどを使用するなど、ユーザーが他のことを実行できるようにしたいと考えています。私の場合、タイマーごとに1つのランループが必要ですか? それはお勧めですか?パフォーマンス上の欠点はありますか?

どうもありがとう!

4

1 に答える 1

2

実行ループは 1 回で十分です。インターフェイスは引き続き応答します。

タイマーが正確であることが保証されていないことに注意してください。それらは、同じループ上に他のものがどれだけあるかによって影響を受けます。タイマーを使用して表示を更新しても問題ありませんが、実際に時間を測定する必要はありません。ストップウォッチを開始するときに NSDate を設定し、表示タイマーが表示を更新するたびに現在の日付とその開始日を比較します。

表示の更新には NSTimer のみを使用する必要があるため、ストップウォッチごとに 1 つではなく、実行中のすべてのストップウォッチを更新する汎用の表示更新タイマーを 1 つだけ使用できますか?

于 2012-03-21T16:09:59.323 に答える