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
580
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
140
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
300
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
450
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
710
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
640
UICollectionView Compositional Layout
usamik26
0
720
Coding Swift with Visual Studio Code and Docker
usamik26
0
480
Swift Extension for Visual Studio Code
usamik26
2
970
Other Decks in Programming
See All in Programming
個人アプリを2年ぶりにアプデしたから褒めて / I just updated my personal app, praise me!
lovee
0
340
Spring gRPC について / About Spring gRPC
mackey0225
0
220
Kubernetes History Inspector(KHI)を触ってみた
bells17
0
200
Djangoアプリケーション 運用のリアル 〜問題発生から可視化、最適化への道〜 #pyconshizu
kashewnuts
1
230
自分ひとりから始められる生産性向上の取り組み #でぃーぷらすオオサカ
irof
8
2.6k
Ruby on cygwin 2025-02
fd0
0
140
2024年のWebフロントエンドのふりかえりと2025年
sakito
1
230
バックエンドのためのアプリ内課金入門 (サブスク編)
qnighy
8
1.7k
ファインディの テックブログ爆誕までの軌跡
starfish719
2
1.1k
AHC041解説
terryu16
0
590
Domain-Driven Transformation
hschwentner
2
1.9k
iOSエンジニアから始める visionOS アプリ開発
nao_randd
3
120
Featured
See All Featured
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.3k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.1k
Designing Experiences People Love
moore
139
23k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
A designer walks into a library…
pauljervisheath
205
24k
RailsConf 2023
tenderlove
29
1k
How to Ace a Technical Interview
jacobian
276
23k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
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!