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
690
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
240
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
370
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
540
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
800
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
710
UICollectionView Compositional Layout
usamik26
0
850
Coding Swift with Visual Studio Code and Docker
usamik26
0
560
Swift Extension for Visual Studio Code
usamik26
2
1.1k
Other Decks in Programming
See All in Programming
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
620
Xdebug と IDE による デバッグ実行の仕組みを見る / Exploring-How-Debugging-Works-with-Xdebug-and-an-IDE
shin1x1
0
230
Symfony + NelmioApiDocBundle を使った スキーマ駆動開発 / Schema Driven Development with NelmioApiDocBundle
okashoi
0
240
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
570
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
340
へんな働き方
yusukebe
6
2.9k
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
140
Codexに役割を持たせる 他のAIエージェントと組み合わせる実務Tips
o8n
4
1.4k
Strategy for Finding a Problem for OSS: With Real Examples
kibitan
0
120
KagglerがMixSeekを触ってみた
morim
0
340
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
210
条件判定に名前、つけてますか? #phperkaigi #c
77web
2
850
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
408
66k
Producing Creativity
orderedlist
PRO
348
40k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
Believing is Seeing
oripsolob
1
97
What's in a price? How to price your products and services
michaelherold
247
13k
The agentic SEO stack - context over prompts
schlessera
0
720
Technical Leadership for Architectural Decision Making
baasie
3
300
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
230
GraphQLとの向き合い方2022年版
quramy
50
14k
Why Our Code Smells
bkeepers
PRO
340
58k
AI: The stuff that nobody shows you
jnunemaker
PRO
3
490
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!