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
Auto Layoutライブデバッギング
Search
akatsuki174
August 18, 2018
Programming
630
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Auto Layoutライブデバッギング
2018/08/18(土)Swift愛好会
iOSDCで話す内容の一部になるかもしれないやつ。
akatsuki174
August 18, 2018
More Decks by akatsuki174
See All by akatsuki174
逆向きUIの世界 〜iOSアプリのRTL言語対応〜
akatsuki174
1
640
逆向きUIの世界〜AndroidアプリのRTL言語対応〜
akatsuki174
1
1.1k
私が変えてきたこと、変えなかったこと
akatsuki174
2
1k
最近読んでいる本-読書シェア会vol.1
akatsuki174
2
280
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
150
Appleにおけるプライバシーの全容を把握する
akatsuki174
0
6.3k
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
520
オフライン勉強会ぼっち対策
akatsuki174
1
720
Xcode 15の新機能
akatsuki174
0
2.9k
Other Decks in Programming
See All in Programming
Claspは野良GASの夢をみるか
takter00
0
190
スマートグラスで並列バイブコーディング
hyshu
0
140
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
250
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.2k
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
2
680
キャリア迷子上等 ─ "ない道"は自分で作ればいい
16bitidol
3
2.1k
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
21
6.6k
Agentic UI
manfredsteyer
PRO
0
160
RTSPクライアントを自作してみた話
simotin13
0
600
OSもどきOS
arkw
0
560
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
4k
Make SRE Operations Easier with Azure SRE Agent
kkamegawa
0
6k
Featured
See All Featured
Technical Leadership for Architectural Decision Making
baasie
3
410
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Un-Boring Meetings
codingconduct
0
310
The Curious Case for Waylosing
cassininazir
1
390
Color Theory Basics | Prateek | Gurzu
gurzu
0
360
KATA
mclloyd
PRO
35
15k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.9k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
280
The browser strikes back
jonoalderson
0
1.2k
RailsConf 2023
tenderlove
30
1.5k
Transcript
Auto LayoutϥΠϒσόοΪϯά @akatsuki174
ࣗݾհ
• ਢ౻ຘʢ@akatsuki174ʣ • iOSDC Japan 2018 ίΞελοϑ
ࠓͷ༰
9/2()ʹiOSDCͰొஃ͢ΔCfP
None
• 130ຕʢεϥΠυࢿྉͷਐḿ65%͘Β͍ʣ • ิࢿྉผ్༻ҙ͢Δ • ઈରʹ30ʹऩ·Βͳ͍ ਐḿ
• ࿅श݉Ͷͯɺ࡞ͬͨࢿྉͷҰ෦ΛͬͯAuto Layoutͷ ɹσόοάͷΛ͠·͢ • ࠓͷ༰Λຊ൪ͰΓࠐΉ͔Θ͔Γ·ͤΜ ɹʢͷͰຊ൪དྷͯ΄͍͠ʣ • AndroidΤϯδχΞ͍ΔͷͰʮAndroidͷ߹͜ΕͲ͏ͳΜʁʯ ɹΈ͍ͨͳΛͭͭ͠ΏΔΓͱΓ·͢
ͱ͍͏͜ͱͰ
̍
˞͔͜͜ΒϥΠϒσόοΪϯάͨ͠༰Λ εϥΠυʹىͨ͜͠ͷʹͳΓ·͢
࡞Γ͍ͨϨΠΞτ ֤7JFXͷ ԣ෯ ֤7JFXͷؒʹಁ໌ͳ 4QBDFS7JFXΛஔ iPhone 8 PlusͩͬͨΒʢҰԠʣͳ͔ͬͨ
iPhone SEαΠζͩͱ Ұݟେৎͦ͏͚ͩͲ େྔͷϫʔχϯά͕ ʘ8BSOJOHʗ
Ͳ͕͓͔͍͜͠ʁ ਫฏํͷ੍͕͓͔͍͜͠ͱ͕Θ͔Δ͕ɺ UIView͔ΓͰΑ͘Θ͔ΒΜʴͦΜͳʹෳࡶͳߏͯ͠ͳ͍ →ͱΓ͋͑ͣStoryboardͰݟͯΈΑ͏ XJEUI MFBEJOH.BSHJO USBJMJOH.BSHJO
͔ͯͲΕ͕ͲͷViewʁ identifier͚Δͷ໘ͩ͠ ผͷํ๏Ͱ۠ผ͠Α͏
ํ๏1ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̍ ·ͣ ϏϡʔσόοΨʔΛ ىಈͯ͠LLDB͕ ͑Δঢ়ଶʹ͢Δ
ํ๏1ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̍ lWJFXXJEUIΛ յͨͥ͠z յ͞ΕͨWJFXΛ ผ͢ΔͨΊʹ ৭Λ͚ͯΈΑ͏
ํ๏1ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̍ ඞཁͳϑϨʔϜ ϫʔΫΛJNQPSU --%#ͷݴޠΛ 4XJGUʹ
ํ๏1ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̍ VOTBGF#JU$BTUΛ ͬͯϙΠϯλ͔Β ΦϒδΣΫτΛऔಘ ΦϒδΣΫτԽ͍ͨ͠ ͷͷΞυϨεΛࢦఆ
ํ๏1ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̍ ΦϒδΣΫτԽͨ͠ WJFXͷഎܠ৭Λʹ
ํ๏1ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̍ ը໘ΛϦϑϨογϡͯ͠ มߋΛө
ํ๏1ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̍ ͜ͷWJFXͷXJEUIͷ ੍͕յΕͨΒ͍͠ʂ
ํ๏̎ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̎ ΦϒδΣΫτԽ͍ͨ͠ ͷͷΞυϨεΛࢦఆ
ํ๏̎ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̎ WJFXͷഎܠ৭Λʹ
ํ๏̎ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̎ ը໘ΛϦϑϨογϡͯ͠ มߋΛө
ํ๏̎ɿLLDB্ͰΦϒδΣΫτΛૢ࡞͢Δ̎ ͜ͷWJFXͷXJEUIͷ ੍͕յΕͨΒ͍͠ʂ
ํ๏̏ɿtext filterΛ͏ ΞυϨεΛUFYUpMUFSʹ ίϐϖʂ ֘͢ΔΦϒδΣΫτʹ ৭͕͍ͭͨʂ
ԫ৭viewͷwidthΛݟͯΈΔͱ… ͔֬ʹXJEUIͷ ੍͕յΕ͍ͯΔ
ࠓStoryboardͷSEαΠζͰݟͯΈΔ X͕Ͳ͏ͷ͜͏ͷͬͯ ݴͬͯΔͷͰͬͺΓ ਫฏํͷ੍͕ ͓͔͍͠
༧͍ͯͨ͠ϨΠΞτ SEͷԣ෯320ɺ֤Viewͷ෯͕100Ͱ leadingMarginɺtrailingMargin͕0ʹͳͬͯΔ͔Βɺ ViewؒͷSpacerView͕ॖ·ΕͪΌΜͱऩ·ΔͷͰʁʁ
ͯΏ͏͔… ͳΜͰleadingʹ伱͕ؒ Ͱ͖ͯΔΜͩΖ͏ʁʁ →ϏϡʔσόοΨʔͰ ɹ֬ೝͯ͠ΈΑ͏
Storyboard্Ͱ੍Λ֬ೝ͢Δํ๏̍ TIPX$POTUSBJOUT ੍ͷ༰
Storyboard্Ͱ੍Λ֬ೝ͢Δํ๏̎ ੍ΛӈΫϦοΫͰ ༰Λग़ྗ
superview͕͓͔͍͠ʁʁ ಛʹͳͦ͞͏
Կ͕͓͔͍͠Μͩʁʁ ͋ΕɺtrailingMargin͔ͬͯͯ͠͠…ʁ
3FMBUJWF UPNBSHJO ʹνΣοΫ͕ೖ͍ͬͯΔ ͭ·Γ QU͕ܭࢉʹೖ͍ͬͯΔ Կ͕͓͔͍͠Μͩʁʁ
Relative to marginͷνΣοΫΛ֎ͯ͠… 3FMBUJWFUP NBSHJO ͷνΣοΫΛ֎ͯ͠ DPOTUBOUΛʹ
ʂ ※ཧͷϨΠΞτͱleading, trailingͷϚʔδϯ͕ҟͳΓ·͕͢ɺ ࠓճviewͷwidth֬อΛ༏ઌ͢Δͱ͍͏ఆͰ͜ΕͰͱ͠·͢ɻ
ͬͨͶʂ ʢͬͯͳͬͯΔͣʣ
ิ
Storyboard্ͰϓϨϏϡʔ ΛiPhone SEʹͯ͠ ͍ΕStoryboard্Ͱ Τϥʔ͕ग़͍ͯΔ͜ͱΛ ֬ೝ͢Δ͜ͱ͕Ͱ͖·͢ɻ
facebook / chisel ͱ͍͏ͭΛ͏ͱLLDBͰͷσόοά͕ շదʹͳΔͬΆ͍
એ
ϦϞʔτ ͋ΔΑʂ
ॳ৺ऀܴ
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ