ObjC滑动scrollview随距离改变属性
作者:CrazyPeter / 发布于2014/12/30/ 1103

遇到的问题:
有些动画效果是通过scrollview的Contentoffset的值进行时时变化的,实现原理也基本就是监听了这个属性的变化。
监听的方法有多种,可以通过kvc(推荐),也可以通过scrollviewdidscroll进行判断。
但是会有一些暴力测试,滑动过快的会出现动画卡帧,或者控件偏移的情况产生。

产生原因:
经过测试,平常的缓缓滑动,通过在scrollviewdidscroll方法里面打出contentoffset.y的变换,每次变化值是0.5,但是快速活动时每次的变换是不一定的,也就是在0.5-20直接变动。

bug分析:
苹果的动画渲染也是有限制的,如果快速滑动,会省略很多过渡动画,但这样也可以欺骗人眼打到过渡动画效果。
所以在制作相关动画时要做响应的预判,如动画达到某个位置已经超过动画限制范围就做出相应的预判即可。

评论列表