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
80
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
670
Apple HIG 正式名称クイズ結果発表 / HIG Quiz Result
usamik26
0
220
ゆめみ大技林製作委員会の立ち上げの話 / daigirin project
usamik26
0
350
@ViewLoadingプロパティラッパの紹介と自前で実装する方法 / @ViewLoading property wrapper implementation
usamik26
0
520
これからUICollectionViewを実践活用する人のためのガイド / Guide to UICollectionView
usamik26
1
780
Xcodeとの最近の付き合い方のはなし / Approach To Xcode
usamik26
2
700
UICollectionView Compositional Layout
usamik26
0
830
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
GoLab2025 Recap
kuro_kurorrr
0
1.5k
안드로이드 9년차 개발자, 프론트엔드 주니어로 커리어 리셋하기
maryang
1
150
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
450
2年のAppleウォレットパス開発の振り返り
muno92
PRO
0
180
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
7
4.3k
クラウドに依存しないS3を使った開発術
simesaba80
0
220
副作用をどこに置くか問題:オブジェクト指向で整理する設計判断ツリー
koxya
1
240
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
640
re:Invent 2025 トレンドからみる製品開発への AI Agent 活用
yoskoh
0
580
AI 駆動開発ライフサイクル(AI-DLC):ソフトウェアエンジニアリングの再構築 / AI-DLC Introduction
kanamasa
11
5k
ローカルLLMを⽤いてコード補完を⾏う VSCode拡張機能を作ってみた
nearme_tech
PRO
0
240
それ、本当に安全? ファイルアップロードで見落としがちなセキュリティリスクと対策
penpeen
6
1.8k
Featured
See All Featured
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
220
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
2.8k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.2k
The agentic SEO stack - context over prompts
schlessera
0
580
Ruling the World: When Life Gets Gamed
codingconduct
0
120
Hiding What from Whom? A Critical Review of the History of Programming languages for Music
tomoyanonymous
1
340
How to make the Groovebox
asonas
2
1.9k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
530
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
360
Rails Girls Zürich Keynote
gr2m
95
14k
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!