首页 > 其他 > 详细

UIdynamic

时间:2016-02-26 23:38:45      阅读:415      评论:0      收藏:0      [点我收藏+]

UIDynamic是一种物理引擎,能够模拟和仿真现实生活中的物理现象:iOS7之后引入的新技术

1.重力、弹性碰撞等现象,案例“愤怒的小鸟”;

价值:让开发人员可以在原理物理公式的情况下,实现炫酷的物理仿真效果;

提高了游戏的开发效率,产生更多更好玩的物理仿真游戏;

知名2D物理引擎:Box2d,Chipmunk

使用步骤:

1.创建一个物理仿真器(设置仿真范围);2.创建相应的仿真行为(顺便添加仿真元素);3将物理仿真行为添加到仿真器里边,开始仿真。

不是任何对象都可以进行物理仿真,必须遵守UIDynamicitem协议的对象才可以进行物理仿真;任何UI控件都可以进行物理仿真;

物理仿真行为:重力行为 UIGravityBehavior,UIcollisionBehavior碰撞行为,UISnapBehavior捕捉行为,UIpushbehavior推动行为,UIttachmentBehavior附着行为。UIDynamicItemBehavior动力元素行为

物理仿真器

(1)物理仿真器须知

它可以让物理仿真元素执行物理仿真行为

它是UIDynamicAnimator类型的对象

 

(2)UIDynamicAnimator的初始化

- (instancetype)initWithReferenceView:(UIView *)view;

view参数:是一个参照视图,表示物理仿真的范围

 

5.物理仿真器的说明

(1)UIDynamicAnimator的常见方法

  - (void)addBehavior:(UIDynamicBehavior *)behavior;    //添加1个物理仿真行为

  - (void)removeBehavior:(UIDynamicBehavior *)behavior;  //移除1个物理仿真行为

  - (void)removeAllBehaviors;    //移除之前添加过的所有物理仿真行为

 

(2)UIDynamicAnimator的常见属性

  @property (nonatomic, readonly) UIView* referenceView;  //参照视图 

  @property (nonatomic, readonly, copy) NSArray* behaviors;//添加到物理仿真器中的所有物理仿真行为

  @property (nonatomic, readonly, getter = isRunning) BOOL running;//是否正在进行物理仿真

  @property (nonatomic, assign) id <UIDynamicAnimatorDelegate> delegate;//代理对象(能监听物理仿真器的仿真过程,比如开始和结束)

 

UIdynamic

原文:http://www.cnblogs.com/liuyang666/p/5222055.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!