UIKit Dynamics (四) 急停

UIKit Dynamics (一) 概述
UIKit Dynamics (二) 重力
UIKit Dynamics (三) 碰撞
UIKit Dynamics (四) 急停
UIKit Dynamics (五) 施力

UISnapBehavior

UISnapBehavior 定义了一个 item 将会移动到一个特定的位置,并且在改位置附近进行一个类似于急停的弹簧效果。即实现了两部分动画,移动动画和急停动画。

使用

UISnapBehavior 的使用非常简单,只有一个实例化函数。函数传递两个参数,一个是要移动的 item,另一个是移动到的位置。

CGPoint anchorPoint = [sender locationInView:_container];
  _snapBehavior = [[UISnapBehavior alloc] initWithItem:_box snapToPoint:anchorPoint];
[_animator addBehavior:_snapBehavior];

配置

UISnapBehavior 的配置也很简单,只有两个属性,一个属性 snapPoint 是将要移动到的位置,初始值是实例化函数传入的值;另一个属性 damping 阻尼即控制急停过程中组力的大小,取值范围为 0~1,默认值为 0.5,damping 越大急停越稳定,越小越剧烈。

@property (nonatomic, assign) CGPoint snapPoint 
@property (nonatomic, assign) CGFloat damping;
Snap

本文 demo 是 Snap 页面,可以通过拖动 slider 调节 dumpling 大小,项目地址

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容