0
[UIView animateWithDuration: animations:^{}]

上記の使用を独自のカスタムアニメーションメソッドに置き換えています。ただし、これが持つ標準的な効果は非常に気に入っています。

だから私の質問は、animateWithDuration のフレーム レートは何ですか?

animateWithDuration の機能は何ですか? それを実装する方法などのアルゴリズムを知る必要はありません。速度/加速度の数式だけです。

4

1 に答える 1

1

「速度」機能は簡単に検査できます。CocoaTouch アニメーションは Core Animation を使用して実装され、「速度」は以下を使用して実装されますCAMediaTimingFunction

CAMediaTimingFunction *function = [CAMediaTimingFunction functionWithName: kCAMediaTimingFunctionEaseInEaseOut];

getControlPointAtIndex:values:次に、タイミング関数曲線 (3 次ベジエ) の制御点を取得するために呼び出します。

もちろん、フレーム レートは、デバイスのディスプレイ、GPU (+ その他のハードウェア コンポーネント)、および現在の負荷によって異なります。もちろん、フレームレートはまったく気にする必要はありません。アニメーションの開始からの時間のみを操作します。

ただし、デフォルトのアニメーションを独自の実装に置き換えることは、ほとんどの場合間違いです。アニメーションは非常に使いやすく、そのパフォーマンスに勝るものはありません。より複雑なアニメーションが必要な場合は、より低いレベルに進むことCore Animationができます。アニメーションを最初から置き換えるのは...非常に悪い考えです。

于 2014-04-23T20:45:36.860 に答える