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
Layout Debug with Reveal.app
Search
USAMI Kosuke
December 23, 2015
Programming
0
81
Layout Debug with Reveal.app
http://kanmoba.connpass.com/event/23958/
USAMI Kosuke
December 23, 2015
Tweet
Share
More Decks by USAMI Kosuke
See All by USAMI Kosuke
Onsager代数とその周辺 / Onsager algebra tsudoi
usamik26
0
680
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
230
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
360
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
530
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
780
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
700
UICollectionView Compositional Layout
usamik26
0
840
Coding Swift with Visual Studio Code and Docker
usamik26
0
540
Swift Extension for Visual Studio Code
usamik26
2
1.1k
Other Decks in Programming
See All in Programming
Grafana:建立系統全知視角的捷徑
blueswen
0
330
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
610
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
280
CSC307 Lecture 09
javiergs
PRO
1
840
FOSDEM 2026: STUNMESH-go: Building P2P WireGuard Mesh Without Self-Hosted Infrastructure
tjjh89017
0
170
16年目のピクシブ百科事典を支える最新の技術基盤 / The Modern Tech Stack Powering Pixiv Encyclopedia in its 16th Year
ahuglajbclajep
5
1k
高速開発のためのコード整理術
sutetotanuki
1
400
AtCoder Conference 2025
shindannin
0
1.1k
Spinner 軸ズレ現象を調べたらレンダリング深淵に飲まれた #レバテックMeetup
bengo4com
1
230
Oxlint JS plugins
kazupon
1
940
AI時代の認知負荷との向き合い方
optfit
0
160
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
200
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
910
The SEO Collaboration Effect
kristinabergwall1
0
350
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
Unsuck your backbone
ammeep
671
58k
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.3k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
Transcript
Layout Debug with Reveal.app
Profile • Ӊࠤݟ ެี • ϑΣϯϦϧגࣜձࣾ • iOS ΞϓϦ։ൃ
REVEAL (http://revealapp.com/)
Layout Debug for iOS
Xcode ͱͷҧ͍ • Reveal break ͠ͳͯ͘ϨΠΞτ֬ೝͰ͖Δ • Live Edit
: Reveal ͦͷͰʢframe color ͳ ͲʣΛॻ͖͑Δ͜ͱ͕Ͱ͖Δ
For Auto Layout
Auto Layout inspection
Auto Layout ͷ Live Edit • ֤ Constraint ʹରͯ͠ɾɾɾ •
Constant ͷมߋ • Active / NonActive Γସ͑ • ίʔυͰͰ͖Δ͜ͱͱಉ͡
ྫ • σβΠφʔ͞Μ͔ΒͷϨΠΞτࢦࣔͩͱ iPhone 4S Ͱݟ ΕΔ • Α͋͘Δɻ •
σβΠφʔ͞Μ iPhone 4S ͷදࣔʹͩ͜ΘΓ͕ͳ͍ • ʮ͡Ό͋ͬͪ͜ͰϚʔδϯͱ͔ௐ͠·͢Ͷʯ
ʢ༨ஊʣ • σβΠφʔ͞Μ iPhone 4S ΛΓ͍ͨͱΑ͘ݴ͏ • ͏ΜɺΘ͔Δɻ • ͨͩɺiPad
ͷ iPhone ޓදࣔಉ͡ॎԣൺ • iPad ͰϘλϯ͕Έग़ͯԡͤͳ͍ → ϦδΣΫτ
ௐ • iPhone 4S + Reveal Ͱతͷը໘Λදࣔ • Ϛʔδϯͷ Constant
Λมߋͯ͠ྑͦ͞͏ͳΛ୳͢ • ͜ͷ࡞ۀ͕ Reveal ͩͱΘΓͱָͰྑ͍
࣮ • ྫ : Ϛʔδϯ͕௨ৗ 30 pt / 4S ͚ͩ
15 pt • Ϛʔδϯ >= 15 pt ͷ੍Λ͚ͭΔ • Ϛʔδϯ == 30 pt ͷ੍Λ͚ͭΔʢ༏ઌԼ͛Δʣ • Ͱ͖ͨΒ Reveal Ͱ࠶֬ೝ
ิ • 4S ͚ʹΨνΨνͷΛࢦఆ͢Δͱ͍͏ͷͳΜ͔ҧ ͏ɾɾɾ • ࣮ࡍͷͪΐ͏ͲͷΑΓগ͠؇Ίͷ੍ʹͨ͠΄͏͕ਫ਼ਆతʹ མͪண͘ • ʮ͜͜࠷ݶ͜Ε͚ͩͷεϖʔε͕ͳ͍ͱϨΠΞτతʹ͓
͔͍͠ʯͱ͍͏෩ʹɺҙຯతʹͭͭ͡·͕߹͏Α͏ͳ੍ʹ͢ Δ
Tips : Reveal ಋೖ
Tips : Reveal ಋೖ • Reveal Λ͏ʹɺiOS ΞϓϦʹ Reveal ϥΠϒϥϦΛϦ
ϯΫ͢Δඞཁ͕͋ΔʢCocoaPods Λར༻Ͱ͖Δʣ • LLDB Ͱϩʔυ : Integrating Reveal without modifying your Xcode project - Itty Bitty Labs
iOS γϛϡϨʔλͷ߹ • ࣄલʹϦϯΫͯ͠ͳͯ͘ LLDB ͰϩʔυͰ͖Δ expr (void*)dlopen( "/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib", 0x2);
expr [(NSNotificationCenter*)[NSNotificationCenter defaultCenter] postNotificationName:@"IBARevealRequestStart" object:nil];
iOS ࣮ػͷ߹ • ࣄલʹ Copy Resources ͕ඞཁ͚ͩͲɺLink ෆཁ expr (void*)dlopen(
[(NSString*)[(NSBundle*)[NSBundle mainBundle] pathForResource:@"libReveal" ofType:@"dylib"] cStringUsingEncoding:0x4], 0x2); expr [(NSNotificationCenter*)[NSNotificationCenter defaultCenter] postNotificationName:@"IBARevealRequestStart" object:nil];
AppCode integration • AppCode ͳΒɺDebug Condigurations Ͱ Inject Reveal library
on launch Λ༗ޮʹ͓͚ͯ͠ OK • ͓ͦΒ͘લड़ͷํ๏Λࣗಈతʹͬͯ͘Ε͍ͯΔ
Have a happy REVEAL life!