手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

iOS如何使用UIDynamic实现物理仿真

时间:2024-10-12 04:30:45

1、UIDynamic仿真物理引擎为iOS提供UIGravityBehavior、UICollision蚱澄堆别Behavior、UISnapBehavior、UIPushBehavior、UIAttachmentBehavior和UIDynamicItemBehavior物理仿真行为,而使用最多的为重力仿真以及碰撞仿真,具体行为列举如下:

iOS如何使用UIDynamic实现物理仿真

2、以重力仿真与碰撞仿真为例,我们定义一个UIView控件(由于UIView遵循UIDynamicItem协议能因此能作为仿真元素),便于观察将控件设置为红色,大小50*50,然后加入到界面上,如下:

iOS如何使用UIDynamic实现物理仿真

3、进入到UIGravityBehavior中我们可以看到重力仿真行为类主要涉及四个属性和四个方法,item添加方法与移除方法,加速度属性以及角度等,具体如下:

iOS如何使用UIDynamic实现物理仿真

4、为了方便测试在touchesBegan方法里面写测试代码,首先创建一个重力行为同时设置加速度,给自定义的仿真对象添瑕铆幌约加重力行为,然后初始化一个UIDynamicAnimator对象(注:UIDynamicAnimator必须设置为属性或者全局变量才能生效),将重力行为加入到UIDynamicAnimator实例化的对象中即可开始动画,具体实现如下:

iOS如何使用UIDynamic实现物理仿真

5、UICollisionBehavior类继承于UIDynamicBehavior,不仅具有元素添加方法,还具有边界设置以及模式设置等,如下:

iOS如何使用UIDynamic实现物理仿真

6、在具有重力行为的基础上给视图对象再增加碰撞行为,并且设置碰撞的边界,具体实现如下:

iOS如何使用UIDynamic实现物理仿真
© 手抄报圈