結果
こんな感じのアニメーションがカンタンに実装できる。
環境
- Swift 4
- Xcode 9.2 (9C40b)
- SnapKit(AutoLayoutをコードで簡単に設定できるライブラリ)を使用
手順
1. 始発点のAutoLayoutを設定し、レイアウトする
// Viewの設定 let view = UIView() view.backgroundColor = UIColor.orange viewController.view.addSubview(view) // AutoLayoutの設定 view.snp.makeConstraints { $0.size.equalTo(40) $0.top.left.equalToSuperview() } // レイアウトする view.superview?.layoutIfNeeded()
2. UIView.animateメソッドを使い、animations引数で終点のAutoLayoutを設定し、レイアウトする
// アニメーションを設定する UIView.animate(withDuration: 3.0) { // 終点のAutoLayoutを設定 view.snp.remakeConstraints { $0.size.equalTo(80) $0.right.bottom.equalToSuperview() } // レイアウトする view.superview?.layoutIfNeeded() }
感想
拡大縮小や移動程度のアニメーションであれば、これでほとんど手間なく実装できる。
カクカクしてるかスムーズに動くかで全然アプリの印象が違うので、アニメーションはできる範囲で積極的にいれていきたい。