Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
UIKit Dynamics
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Rob Brown
December 11, 2013
Technology
0
78
UIKit Dynamics
A basic overview of UIKit dynamics. Demo here:
https://github.com/rob-brown/Demos
Rob Brown
December 11, 2013
Tweet
Share
More Decks by Rob Brown
See All by Rob Brown
High-level Concurrency
robbrown
1
63
Data Source Combinators
robbrown
2
74
Elixir
robbrown
1
230
MVVM
robbrown
3
260
Reactive Cocoa
robbrown
2
150
iOS State Preservation and Restoration
robbrown
5
750
Anti-Patterns
robbrown
3
120
Core Animation: Beyond the Basics
robbrown
1
96
Pragmatic Blocks
robbrown
3
110
Other Decks in Technology
See All in Technology
外部キー制約の知っておいて欲しいこと - RDBMSを正しく使うために必要なこと / FOREIGN KEY Night
soudai
PRO
12
4.9k
月間数億レコードのアクセスログ基盤を無停止・低コストでAWS移行せよ!アプリケーションエンジニアのSREチャレンジ💪
miyamu
0
820
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
360
What happened to RubyGems and what can we learn?
mikemcquaid
0
250
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
1
120
Meshy Proプラン課金した
henjin0
0
250
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
340
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.3k
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
13k
ファインディの横断SREがTakumi byGMOと取り組む、セキュリティと開発スピードの両立
rvirus0817
1
1.2k
制約が導く迷わない設計 〜 信頼性と運用性を両立するマイナンバー管理システムの実践 〜
bwkw
3
880
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
210
Featured
See All Featured
Believing is Seeing
oripsolob
1
53
Accessibility Awareness
sabderemane
0
49
Automating Front-end Workflow
addyosmani
1371
200k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
What's in a price? How to price your products and services
michaelherold
247
13k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
96
Building Flexible Design Systems
yeseniaperezcruz
330
40k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
200
How to audit for AI Accessibility on your Front & Back End
davetheseo
0
180
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
エンジニアに許された特別な時間の終わり
watany
106
230k
Transcript
UIKit Dynamics Robert Brown Twitter: @robby_brown ADN: @robert_brown
What is UIKit Dynamics? A composable, reusable, declarative, real-world inspired
animation and interaction system.
What is UIKit Dynamics? Based on real-world interactions Gravity Collisions
Attachments Snap Forces Weight
Limitations It is possible to create behaviors that can’t be
satisfied Not completely accurate physics Does not replace Core Animation, UIView animations, or motion effects Only supports 2D transforms
UIGravityBehavior Gravity is a simple vector Default is (0, 1)
meaning straight down Default constant is 1000 px/sec2
UICollisionBehavior Views can collide with boundaries and other views Views
can collide conditionally with other views Callbacks for when collisions begin and end (UICollisionBehaviorDelegate) Collisions have a CPU cost
UIAttachmentBehavior Acts like a rope, string, or spring Damping is
customizable Has a length and two anchor points Attachments are invisible
UISnapBehavior Locks position and angle Can use damping
UIPushBehavior Simple force vector 1 UIKit Newton accelerates a (100,100)
view by 100 px/sec2
UIDynamicItemBehavior friction resistance angularResistance elasticity density allowsRotation
Composing Behaviors Effect Combination Bounce Gravity + collision Drag and
snap Attachment then snap Lock screen Gravity + Collision + Attachment + Push Magnet Multiple push
Demo
Questions?
Want to Learn More? WWDC 2013 Session 206 WWDC 2013
Session 221 UIKit Dynamics Catalog Sample