3

UIImageView を使用して、一連の画像をアニメーション化しています。animationDuration を変更することで速度を変更できることは知っていますが、アニメーションが再開されるまで有効にならないようです。

私の問題は、サイクルごとに1回しか速度を変更できないため、アニメーションを再起動する必要がないことに加えて、現在表示されているフレームを見つける方法がないように見えることです。したがって、それがどれであるかを「推測」するには、タイマーに頼る必要があります。

私の質問は、アニメーションを再起動せずに速度を変更する方法があるかどうかです。そうでない場合、前述の問題を回避できる方法はありますか? 私は自分自身のアニメーション クラスを作成することにあまり熱心ではありませんが、より適切な解決策がなければ、作成しなければならなくなる可能性があります。

4

1 に答える 1

0

UIImageViewこれがスーパークラスに当てはまるかどうかはわかりませんが、UIViewクラスには次のプロパティがあり、デフォルトはNOです。

setAnimationBeginsFromCurrentState:(BOOL)fromCurrentState

に変更しYESてメソッドを呼び出すとcommitAnimations、その後の への呼び出しはbeginAnimations:context:、アニメーションが停止した時点から開始されます。

于 2009-04-19T18:48:37.703 に答える