2017-11-28 6 views
0

次のいずれかの機能が、他の機能より先に進んでいるか、パフォーマンス/ベストプラクティスで問題はありませんか?UIView.animateブロックの内側または外側のループについては?

1. 
UIView.animate(withDuration: 1){ 
    for b in self.someArray{ 
     b.frame.origin = self.myNewPosition 
    } 
} 

2. 
for b in self.someArray{ 
    UIView.animate(withDuration: 1){ 
     b.frame.origin = self.myNewPosition 
    } 
} 
+0

両方お試しでしたか?何が起こった? – rmaddy

+0

@rmaddy私は関数の副作用に気づいていませんでしたが、コードではこの部分で一貫して動作していないことがわかりましたが、配列のアニメーション化に推奨される方法があるかどうかは疑問でした。 –

答えて

0

オプション1では、1つのアニメーションが作成され、すべての更新されたプロパティがアニメーション化されます。

オプション2では、X個のアニメーションが作成され、それぞれに任意の操作を行うことができます。

すべての原点を同じ時間に同じ時間に変更したい場合は、オプション1を使用します。

アレイ内の各オブジェクトに異なるアニメーションを使用する場合は、オプション2を使用します。

関連する問題