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
Rob Brown
December 11, 2013
Technology
0
66
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
56
Data Source Combinators
robbrown
2
66
Elixir
robbrown
1
210
MVVM
robbrown
3
240
Reactive Cocoa
robbrown
2
140
iOS State Preservation and Restoration
robbrown
5
700
Anti-Patterns
robbrown
3
110
Core Animation: Beyond the Basics
robbrown
1
78
Pragmatic Blocks
robbrown
3
86
Other Decks in Technology
See All in Technology
Road to Single Activity
yurihondo
2
240
JEP 480: Structured Concurrency
aya_ebata
0
130
Agile in Automotive Industry, puzzles and lights.
hiranabe
3
1.4k
2024年のナビゲーション・フォーカス対応:Composeでキーボード・ナビゲーションをサポートしよう
tahia910
0
110
アプリをリリースできる状態に保ったまま 段階的にリファクタリングするための 戦略と戦術 / Strategies and tactics for incremental refactoring
yanzm
6
1.4k
あなたの知らないiOS開発の世界
recruitengineers
PRO
3
180
テスト”ケース”駆動開発 で手戻りをなくそう
ryohma0510
0
320
「家族アルバム みてね」における運用管理・ オブザーバビリティの全貌 / Overview of Operation Management and Observability in FamilyAlbum
isaoshimizu
4
160
言葉は感情の近似値である。その感情と言葉の誤差を最小化しよう ~コミュニケーションにおけるアナログ/デジタル変換の課題に立ち向かう~
nktamago
0
230
Privacy Sandbox on Android / DroidKaigi 2024
7pairs
1
270
20240912 JJUGナイトセミナー
mii1004
0
140
Google CloudのLLM活用の選択肢を広げるVertex AIのパートナーモデル
nayuts
0
130
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
278
13k
Mobile First: as difficult as doing things right
swwweet
221
8.8k
Designing Experiences People Love
moore
138
23k
VelocityConf: Rendering Performance Case Studies
addyosmani
322
23k
KATA
mclloyd
27
13k
Scaling GitHub
holman
458
140k
The Illustrated Children's Guide to Kubernetes
chrisshort
47
48k
Practical Orchestrator
shlominoach
185
10k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
109
6.9k
From Idea to $5000 a Month in 5 Months
shpigford
379
46k
How STYLIGHT went responsive
nonsquared
93
5.1k
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