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
Adaptive Layout Workshop
Search
sammyd
February 20, 2015
Programming
0
340
Adaptive Layout Workshop
The slides which accompany the adaptive layout workshop presented at (amongst others) MobOS 2015.
sammyd
February 20, 2015
Tweet
Share
More Decks by sammyd
See All by sammyd
Core Image: Great when it works
sammyd
1
500
iOS Views & Animations: Learning by stealing
sammyd
1
170
Machine Learning on Mobile—a primer
sammyd
0
98
Core ML: A whistlestop tour
sammyd
1
150
DIY DI
sammyd
2
110
iOSConfSG 2017: Decoding Codable
sammyd
3
190
Machine Learning: deciphering the hype
sammyd
0
130
Notify Me, Notify You. Aha!
sammyd
1
170
SwiftConf 2016: Concurrency on iOS
sammyd
1
170
Other Decks in Programming
See All in Programming
Modern Angular with Signals and Signal Store:New Rules for Your Architecture @enterJS Advanced Angular Day 2025
manfredsteyer
PRO
0
270
可変変数との向き合い方 $$変数名が踊り出す$$ / php conference Variable variables
gunji
0
180
Advanced Micro Frontends: Multi Version/ Framework Scenarios @WAD 2025, Berlin
manfredsteyer
PRO
0
390
AIともっと楽するE2Eテスト
myohei
8
3k
「テストは愚直&&網羅的に書くほどよい」という誤解 / Test Smarter, Not Harder
munetoshi
0
200
おやつのお供はお決まりですか?@WWDC25 Recap -Japan-\(region).swift
shingangan
0
140
イベントストーミング図からコードへの変換手順 / Procedure for Converting Event Storming Diagrams to Code
nrslib
2
1.1k
リバースエンジニアリング新時代へ! GhidraとClaude DesktopをMCPで繋ぐ/findy202507
tkmru
3
960
テストから始めるAgentic Coding 〜Claude Codeと共に行うTDD〜 / Agentic Coding starts with testing
rkaga
15
5.6k
[SRE NEXT] 複雑なシステムにおけるUser Journey SLOの導入
yakenji
0
150
マッチングアプリにおけるフリックUIで苦労したこと
yuheiito
0
190
ISUCON研修おかわり会 講義スライド
arfes0e2b3c
1
470
Featured
See All Featured
Navigating Team Friction
lara
187
15k
How to Ace a Technical Interview
jacobian
278
23k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Adopting Sorbet at Scale
ufuk
77
9.5k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
How to Think Like a Performance Engineer
csswizardry
25
1.7k
Transcript
Adaptive Layout Workshop Sam Davies @iwantmyrealname github.com/sammyd/adaptive-layout-workshop
Requirements • Xcode 6.1 • AdaptiveWeaponry sample project
Plan • AutoLayout refresher • Intro to size classes •
Installable constraints • Handling rotation in a post-rotation world • Adaptive fonts • Configurable constraints • Installable Views
Auto Layout Refresher
Adaptive Layout
In the beginning there was...
In the beginning there was...
In the beginning there was...
In the beginning there was...
In the beginning there was...
In the beginning there was...
In the beginning there was... ...a total of 10 different
layouts
in the past
this doesn't scale
introducing Adaptive Layout • Abstracts layout away from device specifics
• Introducing concept of size classes • Available in iOS 8 • Fully supported in Xcode and IB
"amount of space available for content"
Size classes
Size classes
Size classes
Approach to adaptive layout 1. Build base layout 2. Choose
size class override 3. Uninstall irrelevant constraints 4. Add new constraints specific to size class 5. Rinse and repeat
Let's Go!
Useful Links sam ⁶ @iwantmyrealname code ⁶ github.com/sammyd/adaptive-layout-workshop free book
⁶ shinobicontrols.com/ios8 competition ⁶ shinobicontrols.com/giveaway Thanks!