UIKit Dynamics的中文名稱:有叫UIKit動力,也有叫UIKit動力模型和UIKit動態或者動態UI,叫什麼名沒關係,理解就含義就能夠了。html
什麼是UIKit Dynamics ?app
UIKit動力提供了一個模擬真實世界中力學相關的動畫和交互系統。好比重力、碰撞和吸附等。UIKit動力具備可組合、可重用和聲明式的特色。個人理解就是把遊戲開發中的物理引擎的搬過來了。
ide
首先簡單看幾點基礎知識:學習
一、UIDynamicAnimator:
動畫
a、ui
A dynamic animator provides physics-related capabilities and animations for its dynamic items, and providesthe context for those animations. It does this by intermediating between the underlying iOS physics engineand dynamic items, via behavior objects you add to the animator. this
UIDynamicAnimator類的做用是起到銜接動力項和view,很重要。
spa
b、.net
能夠有這些做用:(固然,英文不用都理解,明白大體意思就能夠,後面看代碼就明白了)代理
All types of dynamic animators share the following characteristics:
Each dynamic animator is independent of other dynamic animators you create
You can associate a given dynamic item with multiple behaviors, provided those behaviors belong to thesame animator
An animator automatically pauses when all its items are at rest, and automatically resumes when a behaviorparameter changes or a behavior or item is added or removed
c、
初始化方法:
– initWithReferenceView:
Initializes a dynamic animator with a specified view as its reference view.
d、
UIDynamicAnimator在view中實現的時候,也有其代理方法:
dynamicAnimatorDidPause: 動力項在view中被Pause的時候時候回調此方法
dynamicAnimatorWillResume: 動力項在view中Resume的時候時候回調此方法
二、一些動力項(都是模擬真實物體在現實中的行爲)
UIAttachmentBehavior 吸附
UICollisionBehavior 碰撞
UIDynamicItemBehavior 活力(相似真實物體,有活力,更逼真)
UIGravityBehavior 重力(物體受重力影響自由下落)
UIPushBehavior 推進
UISnapBehavior objects 倉促
下看就去看代碼吧:官網demo(http://pan.baidu.com/share/link?shareid=1092885049&uk=3674861929)
UIDynamicAnimator_Class 文檔下載直通車:http://pan.baidu.com/share/link?shareid=1108425560&uk=3674861929
更多內容請查看官網:https://developer.apple.com/wwdc/schedule/
這個愛學習的人的博客也頗有用:http://www.cocoachina.com/newbie/basic/2013/0612/6393.html
注意:
一、若是看代碼,或者本身創建項目的時候,出現IOS7的build錯誤了,那就看看這裏吧 http://blog.csdn.net/zfpp25_/article/details/9106573
二、看代碼時,會遇到 anchorPoint (錨點)這個遊戲中經常使用的概念,不明白沒關係,看這裏 http://blog.csdn.net/zfpp25_/article/details/8641651
雖然官網的例子也有問題,不過新東西,代碼太少,將就看吧,因爲工做忙,因此沒那麼多空閒時間,就到這裏吧。祝學習快樂。