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
63
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
53
Data Source Combinators
robbrown
2
65
Elixir
robbrown
1
200
MVVM
robbrown
3
240
Reactive Cocoa
robbrown
2
130
iOS State Preservation and Restoration
robbrown
5
680
Anti-Patterns
robbrown
3
110
Core Animation: Beyond the Basics
robbrown
1
77
Pragmatic Blocks
robbrown
3
86
Other Decks in Technology
See All in Technology
【NW X Security JAWS#3】L3-4:AWS環境のIPv6移行に向けて知っておきたいこと
shotashiratori
1
460
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
170
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
240
[新卒向け研修資料] テスト文字列に「うんこ」と入れるな(2024年版)
infiniteloop_inc
4
16k
One engineer company with Ruby on Rails
rstankov
2
320
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
生成AIの変革の時代に、直近1年で直面した課題とその解決策
ktc_wada
0
400
障害対応をちょっとずつよくしていくための 演習の作りかた
heleeen
1
330
AOAI をきっかけに 社内の Azure 管理を見直した話
recruitengineers
PRO
1
390
開発生産性大幅アップ!Postman VS Code拡張機能
nagix
3
500
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
130
Kernel MemoryでAzure OpenAI Serviceとお手軽データソース連携
mitsuzono
1
260
Featured
See All Featured
What's new in Ruby 2.0
geeforr
337
31k
Code Reviewing Like a Champion
maltzj
514
39k
A Tale of Four Properties
chriscoyier
151
22k
Building Effective Engineering Teams - LeadDev
addyosmani
28
1.9k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Designing on Purpose - Digital PM Summit 2013
jponch
110
6.5k
What the flash - Photography Introduction
edds
64
11k
Done Done
chrislema
178
15k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Making Projects Easy
brettharned
108
5.5k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
21
1.6k
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
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