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
66
Elixir
robbrown
1
220
MVVM
robbrown
3
240
Reactive Cocoa
robbrown
2
140
iOS State Preservation and Restoration
robbrown
5
710
Anti-Patterns
robbrown
3
110
Core Animation: Beyond the Basics
robbrown
1
79
Pragmatic Blocks
robbrown
3
86
Other Decks in Technology
See All in Technology
リンクアンドモチベーション ソフトウェアエンジニア向け紹介資料 / Introduction to Link and Motivation for Software Engineers
lmi
4
300k
プロポーザルのつくり方 〜個人技編〜 / How to come up with proposals
ohbarye
4
300
Team Dynamicsを目指すウイングアーク1stのQAチーム
sadonosake
1
160
エンジニアが一生困らない ドキュメント作成の基本
naohiro_nakata
2
100
AWS パートナー企業でテクニカルサポートに従事して 3年経ったので思うところをまとめてみた
kazzpapa3
1
200
[JAWS-UG金沢支部×コンテナ支部合同企画]コンテナとは何か
furuton
3
330
徹底比較!HA Kubernetes ClusterにおけるControl Plane LoadBalancerの選択肢
logica0419
2
140
「視座」の上げ方が成人発達理論にわかりやすくまとまってた / think_ perspective_hidden_dimensions
shuzon
2
15k
FOSS4G 2024 Japan コアデイ 一般発表25 PythonでPLATEAUのデータを手軽に扱ってみる
ra0kley
1
120
Shift-from-React-to-Vue
calm1205
4
1.6k
Postmanの日本市場におけるDevRel (的) 活動 / Postman's DevRelish activities in Japan
yokawasa
1
110
ジョブマッチングサービスにおける相互推薦システムの応用事例と課題
hakubishin3
3
610
Featured
See All Featured
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Code Review Best Practice
trishagee
64
17k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Optimising Largest Contentful Paint
csswizardry
33
2.9k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9k
Docker and Python
trallard
40
3.1k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
Practical Orchestrator
shlominoach
186
10k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Mobile First: as difficult as doing things right
swwweet
222
8.9k
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