让用户沉浸于动画体验
在开发应用时,动画是提升用户体验的重要元素。本文将介绍如何使用 UIViewPropertyAnimator
重构现有动画、控制动画进度以及添加弹簧动画效果,让你的应用动画更加生动、自然。
1. 使用 UIViewPropertyAnimator 重构现有动画
在之前的开发中,我们通常使用 UIView.animate
方法来实现动画。例如,改变视图背景颜色的动画代码如下:
UIView.animate(withDuration: 1.5, animations: {
myView.backgroundColor = UIColor.red()
})
在 HelloContacts
应用中,当用户点击联系人时,会使用以下代码实现一个弹跳效果的动画:
UIView.animate(withDuration: 0.1, delay: 0, options: [.curveEaseOut], animations: {
cell.contactImage.transform = CGAffineTransform(scaleX: 0.9, y: 0.9)
}, completion: { finished in
UIView.animate(withDuration: 0.1, delay: 0, options: [.curveEaseIn], animations: {