実践段階とは言うものの、
制作したいアプリに関連するノウハウを調べながら、いまだ学習が続いています。
きょう注目したかったのは、回転するアニメーションとその負荷です。
UIView.beginAnimations("", context: nil)
// 回転
// (ここで施す変形は、UIView.commitAnimations()するまでは反映されない)
UIView.commitAnimations()
そもそもは、ぐるぐると一方向に回り続けるビューを作りたかったのですが、
360度という回転がアニメーションに反映されません![]()
どういう事かなと思って、角度と回転の関係を確かめたのが、これです。
Affine変換とUIViewアニメーションの組み合わせでは、
距離が短いほう(劣角側。180度より小さい側)に回転します。
180度の場合は、正負に関わらず時計回りに回転します。
たまにアプリ起動直後に処理がつんのめる事がありますが、
その他は、相当な数をタップしてもスムースに回転しています![]()
CoreAnimationというのを直接操作すればさらに負荷が軽いらしいのですが、
その方法はまだわかりません。
ビューが丸いのは、角丸の設定を利用しています。
self.layer.cornerRadius = rect.width/2 self.clipsToBounds = true
UIViewアニメーションで360度の回転をさせるには、
180度ずつ2回に分けるとか、
反時計回りであればマイナス120度ずつ3回に分ければいいのかな![]()
これは明日試してみるつもりです。
たくさんの事が変更になっていて、調べ物をするにも一筋縄にいきません![]()