当年苹果手机发布的时候,大家都惊叹于流畅的滑动效果,也就是UIScrollView的效果。现在由于工作中有个需要,能够模拟系统的滑动效果,因此开始了研究。目前代码托管在github上。
首先这里肯定不是CAAnimation的效果,那么我们使用CADisplayLink来实现这个效果。
##弹性效果
当我们拉出边界的时候,会有一个弹性的回弹效果。看系统的效果,应该是一个时间固定的动画效果。开始我想可能是模拟摩擦力的效果,demo中使用的也是摩擦力效果,但实际上和系统的效果做比较后发现有些细微的区别,系统可能使用的是双曲线的模型。但也有点像模像样了。
##惯性效果
在我们拖动停止的时候,我们还有个惯性效果,同样的我们这里使用摩擦的效果。和系统对比后发现系统比摩擦效果更加的圆滑,系统应该用的还是双曲线效果。
还有惯性结束后的碰撞效果我也是模拟摩擦力,不过系统好像也是双曲线模型,感觉系统的效果更加的平滑,不过和系统的scrollView效果比起来也可以看看了。