いくつかのコンサルタントが私たちのためにいくつかのコードを構築しました。私は彼らがUIViewサブクラスのために書いたメソッドを見ています。これは基本的に次のようになります:はremoveAllAnimationsで、アニメーションを追加する方法はありますか?
- (void)startAnimation {
[self.circle removeAllAnimations];
// then some animation code for the circle. The circle is a CAShapeLayer.
[self.circle addAnimation:group forKey:@"animationPath"];
}
アニメーションを実装するには2つの質問がありますか?最初にすべてのアニメーションを削除してから、追加しますか?これは別のどこかのアプリでループのために、それは基本的にオブジェクトを見て、ちょうど呼び出すので、常に最初のアニメーションを除去するための高価な操作である場合、私は思っていた:
for (id points in pointsArray) {
[points startAnimation];
}
盲目的に取り外した場合、私は思っていましたポイントオブジェクトが既にアニメーション化されているかどうかを確認することなく、アニメーションを追加して戻してもOKです。
また、アニメーション化されたものをチェックする方法はありますか?コードを見ると、すべてのオブジェクトのアニメーションが開始されます。 (それはscrollViewにだとそれが現在表示されていないだから)彼らは、画面の外に配置されているただし場合、オブジェクトは、彼らが作成し、ビューに追加されたときにstartAnimation
は、各オブジェクトに対して呼び出されていてもアニメーションはありません。ありがとう。