私はこれをしたい: デバイスが移動した場合 (加速度計の値が変化した場合)、その動きに応じてビュー内の値を調整したいと考えています。
加速度計の値が変化するたびにメソッドを呼び出すでしょうか? 頻繁に更新される可能性があるため、それは悪い考えだと思います。
私はこれをしたい: デバイスが移動した場合 (加速度計の値が変化した場合)、その動きに応じてビュー内の値を調整したいと考えています。
加速度計の値が変化するたびにメソッドを呼び出すでしょうか? 頻繁に更新される可能性があるため、それは悪い考えだと思います。
あまりにも頻繁な変更が心配な場合は、アキュムレータを使用してください。変更を検出し、システム時刻をチェックするコードを少し使用します。十分なシステム時間が経過した場合にのみ、(潜在的に蓄積された) change メソッドを起動します。
私はそう思います... そうでない場合、選択肢は 1 つだけです。定期的に読書を取得します。ここでも期間が短いほど、精度が高くなります。そのため、値の変化が検出されたときにイベントをトリガーできると、より効率的になる可能性があります。
加速度計からのノイズが気になる場合は、移動平均を実装して入力を平滑化できます。これにより、加速度計からの誤った開始を心配することなく、必要な頻度でサンプルを取得できます。
accelerometer:didAccelerate:
にメソッドを実装するときは、最後に更新を取得してから十分な長さであるかどうかを確認UIAccelerometerDelegate
するステートメントを作成するだけです。if
を実装するクラスではUIAccelerometerDelegate
、次のようなプロパティを保持しlastTimeUpdated
、ビューを変更するたびに更新することができます