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
71
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
600
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
160
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
310
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
460
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
720
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
650
UICollectionView Compositional Layout
usamik26
0
750
Coding Swift with Visual Studio Code and Docker
usamik26
0
490
Swift Extension for Visual Studio Code
usamik26
2
1k
Other Decks in Programming
See All in Programming
AHC 044 混合整数計画ソルバー解法
kiri8128
0
290
リアクティブシステムの変遷から理解するalien-signals / Learning alien-signals from the evolution of reactive systems
yamanoku
2
430
AtCoder Heuristic First-step Vol.1 講義スライド(山登り法・焼きなまし法編)
takumi152
3
950
Devin , 正しい付き合い方と使い方 / Living and Working with Devin
yukinagae
1
500
ローコードサービスの進化のためのモノレポ移行
taro28
1
330
爆速スッキリ! Rspack 移行の成果と道のり - Muddy Web #11
dora1998
0
140
AtCoder Heuristic First-step Vol.1 講義スライド
terryu16
2
970
OUPC2024 Day 1 解説
kowerkoint
0
390
DenoでOpenTelemetryに入門する
yotahada3
2
280
アーキテクトと美学 / Architecture and Aesthetics
nrslib
12
2.9k
フロントエンドテストの育て方
quramy
8
2.3k
PHPer's Guide to Daemon Crafting Taming and Summoning
uzulla
2
870
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
80
8.9k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Fireside Chat
paigeccino
37
3.3k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
It's Worth the Effort
3n
184
28k
How to train your dragon (web standard)
notwaldorf
91
5.9k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
Adopting Sorbet at Scale
ufuk
75
9.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Bash Introduction
62gerente
611
210k
Optimizing for Happiness
mojombo
377
70k
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!