【iOS開發】UIKit Dynamics




UIKit Dynamics :  一個模擬真實的動畫和交互系統,具備可組合、可重用和聲明的特色。git


UIKit Dynamics Framwork:github






Reference Viewe: 參照物,爲Dynamic system提供座標系。動畫


UIDynamicAnimator :物理引擎。會記錄你添加到引擎中的行爲,並提供全局上下文。spa


UIDynamicBehavior: 行爲模型.net


1.UIAttachmentBehavior3d

2.UICollisionBehavior繼承

3.UIDynamicItemBehaviorci

4.UIGravityBehaviorget

5.UIPushBehavior源碼

6.UISnapBehavior


dynamic行爲能夠是組合的,也能夠被繼承,能夠在任意時間內進行添加和移除;必須是在二維空間進行。



自由落體運動實例:


1.添加受力物體


@interface ViewController (){

UIView *motionView;

}


motionView = [[UIViewallocinitWithFrame:CGRectMake(100,90,100,100)];

motionView = [UIColorgrayColor];

[self.view motionView];



2.添加引擎,並提供參照物


UIDynamicAnimator *animator;


animator = [[UIDynamicAnimatoralloc initWithReferenceView:self.view;


3.給引擎添加劇力行爲


UIGravityBehavior *gravity;


gravity = [[UIGravityBehavioralloc]initWithItems:@[motionView]];

[animatoraddBehavior:gravity];


4.添加邊界


UICollisionBehavior *collision;


collision = [[UICollisionBehavioralloc]initWithItems:@[motionView]];

//把參照物的bound設置爲邊界

collision.translatesReferenceBoundsIntoBoundary =YES;

[animatoraddBehavior:collision];



源碼下載:

csdn上  github上 

相關文章
相關標籤/搜索