0

更新: タッチを利用するときに UI 要素をアニメーション化しないのと同じくらい簡単でした。ラグなしでタッチに完全に追従します。

現在、UIView サブクラス内に CALayer サブクラスを実装することにより、UI 機能を実装しようとしています。カスタムUIVIewの対応するView Controllerでタッチイベントを受け取り、タッチについてUIViewに通知します。これにより、レイヤーに描画されたUI要素をアニメーション化するためにCALayerに通知されます。

それはすべて機能しますが、動きに大きなデルタがある場合 (指をすばやくスクロールする場合など)、CABasicAnimation が遅れることに気付きました。理想的には、アニメーションがユーザーの指と完全に一致するようにしたいと考えています。

アニメーションの速度を任意に高く設定するハックな方法を思いつきました

anim.speed = 10.0f;

これは本質的にユーザーの指に追いついていますが、これは完全なハックであり、出荷可能なソリューションではないと感じています. この問題を解決するために、処理されるタッチ イベントの数を人為的に制限する必要がありますか? 私が気付いていないアニメーションの速度/持続時間のために私がしなければならない何らかの計算はありますか?

これについて助けてくれてありがとう!

4

1 に答える 1