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
67
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
57
Data Source Combinators
robbrown
2
68
Elixir
robbrown
1
220
MVVM
robbrown
3
250
Reactive Cocoa
robbrown
2
140
iOS State Preservation and Restoration
robbrown
5
720
Anti-Patterns
robbrown
3
110
Core Animation: Beyond the Basics
robbrown
1
80
Pragmatic Blocks
robbrown
3
86
Other Decks in Technology
See All in Technology
スケールし続ける事業とサービスを支える組織とアーキテクチャの生き残り戦略 / The survival strategy for Money Forward’s engineering.
moneyforward
0
190
TypeScript開発にモジュラーモノリスを持ち込む
sansantech
PRO
3
820
UI State設計とテスト方針
rmakiyama
4
920
30分でわかるデータ分析者のためのディメンショナルモデリング #datatechjp / 20250120
kazaneya
PRO
10
2.5k
多領域インシデントマネジメントへの挑戦:ハードウェアとソフトウェアの融合が生む課題/Challenge to multidisciplinary incident management: Issues created by the fusion of hardware and software
bitkey
PRO
2
140
ソフトウェア開発における「パーフェクトな意思決定」/Perfect Decision-Making in Software Development
yayoi_dd
2
2.6k
社内イベント管理システムを1週間でAKSからACAに移行した話し
shingo_kawahara
0
240
SpiderPlus & Co. エンジニア向け会社紹介資料
spiderplus_cb
0
120
Web APIをなぜつくるのか
mikanichinose
0
1.3k
大規模言語モデルとそのソフトウェア開発に向けた応用 (2024年版)
kazato
2
340
ネットワーク可視化の世界
likr
7
5.5k
OPENLOGI Company Profile for engineer
hr01
1
17k
Featured
See All Featured
Navigating Team Friction
lara
183
15k
Facilitating Awesome Meetings
lara
50
6.2k
KATA
mclloyd
29
14k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
230
52k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
97
17k
It's Worth the Effort
3n
183
28k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Learning to Love Humans: Emotional Interface Design
aarron
274
40k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
18
2.3k
Being A Developer After 40
akosma
89
590k
A Philosophy of Restraint
colly
203
16k
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