私はMVCモデルに基づいてストップウォッチを実装しようとしています。ストップウォッチのオブザーバーパターン
ストップウォッチはNSTimerを使用し、セレクタ-(void) tick
はタイムアウトごとに呼び出されます。
私は再利用性のモデルとしてストップウォッチを作成しようとしましたが、各ティックごとにビューコントローラを更新する方法に関するいくつかの設計上の問題にぶつかってきました。
まず、チックメソッドを使用してプロトコルを作成し、ビューコントローラをその代理人にしました。次に、ビューコントローラーは、各ティックでタイマーのプロパティに基づいてビューを更新します。 elapsedTimeは読み取り専用のNSTimeIntervalです。
それは動作しますが、私はそれが悪いデザインかもしれないと思っています。私はObjective-C/Cocoa Touchの初心者です。私はKVOのようなものを使うべきですか?または、モデルがelapsedTime
が変更されたビューコントローラに通知するためのより洗練されたソリューションがありますか?
初めての質問です!ようこそ! –
タイマーとView Controllerの関係はどういうものですか?タイマーはVCによって所有されていますか? –
ありがとうございました:) タイマーはVCによって所有されています。私はTimerから継承したIntervalTimerを実装していますが、代わりにVCがIntervalTimerを所有しています - IntervalTimerは実際に私に少し問題を与えるものです。 – Jach0