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
pixivコミックでのXcode16対応
Search
atomic
February 27, 2025
Technology
0
150
pixivコミックでのXcode16対応
2025/02/27に行われたAppNightの登壇資料です
atomic
February 27, 2025
Tweet
Share
More Decks by atomic
See All by atomic
新卒AndroidエンジニアがOJTで学んだこと
atomic928
0
160
Other Decks in Technology
See All in Technology
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
330
会社紹介資料 / Sansan Company Profile
sansan33
PRO
15
400k
学生・新卒・ジュニアから目指すSRE
hiroyaonoe
2
630
コミュニティが変えるキャリアの地平線:コロナ禍新卒入社のエンジニアがAWSコミュニティで見つけた成長の羅針盤
kentosuzuki
0
120
今日から始めるAmazon Bedrock AgentCore
har1101
4
410
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
200
Claude_CodeでSEOを最適化する_AI_Ops_Community_Vol.2__マーケティングx_AIはここまで進化した.pdf
riku_423
2
590
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
3
810
データの整合性を保ちたいだけなんだ
shoheimitani
8
3.1k
予期せぬコストの急増を障害のように扱う――「コスト版ポストモーテム」の導入とその後の改善
muziyoshiz
1
2k
[CV勉強会@関東 World Model 読み会] Orbis: Overcoming Challenges of Long-Horizon Prediction in Driving World Models (Mousakhan+, NeurIPS 2025)
abemii
0
140
Introduction to Bill One Development Engineer
sansan33
PRO
0
360
Featured
See All Featured
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
300
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
240
Code Review Best Practice
trishagee
74
20k
Ruling the World: When Life Gets Gamed
codingconduct
0
140
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
130
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.4k
Rails Girls Zürich Keynote
gr2m
96
14k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
240
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
0
140
Unsuck your backbone
ammeep
671
58k
Transcript
2025/02/27 pixiv AppNight / atomic pixivίϛοΫͰͷXcode16ରԠ
atomic • 20244݄৽ଔೖࣾ • AndroidΤχδχΞͱͯ͠ೖࣾ • લʹAndroidͰAppNightొஃ • ݱࡏ •
pixivίϛοΫ෦ iOSΤϯδχΞ
ΞδΣϯμ • Xcode16ʹ্͛Δత • ൃੜͨ͠ͱରԠ • ؾΛ͚͓ͭͯ͘ͱྑ͍͜ͱ
ͳͥXcode16ʹ্͛Δͷ͔ʁ
ͳͥXcode16ʹ্͛Δʁ • ྫ௨ΓͰ͋Εɺ20254݄͔ΒXcode16ͰϏϧυͨ͠ΞϓϦͰͳ ͍ͱετΞʹެ։Ͱ͖ͳ͘ͳΔ • 20254݄Ҏ߱ɺApp Store ConnectʹΞοϓϩʔυ͢ΔΞϓϦiOS 18ɺ iPadOS
18ɺtvOS 18ɺvisionOS 2ɺ·ͨwatchOS 11ʹରԠͨ͠SDKͰϏϧυ͢Δ ඞཁ͕͋Γ·͢ɻ • https://developer.apple.com/jp/news/?id=utw4yhtp
ͳͥXcode16ʹ্͛Δʁ • App Storeʹެ։͍ͯ͠ͳͯ͘ϝϦοτ͕͋Δ • Swift6͕͑ΔΑ͏ʹͳΔ • SwiftUI Previewͷվળ •
ϏϧυͷߴԽ • https://developer.apple.com/jp/videos/play/wwdc2024/10135/
ରԠํ๏
खॱ • Xcode16.x ΛΠϯετʔϧ͠Ϗϧυ • αϙʔτ͍ͯ͠Δ֤OSͰಈ࡞֬ೝ • ͕ൃੜͨ͠Օॴͷमਖ਼
ൃੜͨ͠ • λϒόʔͷҐஔ͕ҧ͏ • Ϟʔμϧͷ৭ͱαΠζ͕ҧ͏ • CollectionView͕ಛఆͷಈ࡞ͰΫϥογϡ͢Δ • ςΩετϦϯΫ͕ಈ࡞͠ͳ͍
λϒόʔͷҐஔ͕ҧ͏
λϒόʔͷҐஔ͕ҧ͏ͷରԠ • iPadOS18Ͱλϒόʔ্͕ʹҠಈͨ͠ ैདྷ iPadOS18
λϒόʔͷҐஔ͕ҧ͏ͷରԠ • iPadOS18͔Β༷͕มߋ͞Εͨ https://developer.apple.com/documentation/uikit/elevating-your-ipad-app-with-a-tab-bar-and-sidebar#overview
λϒόʔͷҐஔ͕ҧ͏ͷରԠ • ํᶃ ৽͍͠λϒόʔͷUIʹ߹ΘͤͯɺσβΠϯΛ৽ • ϝϦοτɿࠓޙ৽UI͕ओྲྀʹͳΔͱࢥΘΕΔ • σϝϦοτɿ΄΅શͯͷը໘ʹӨڹ͠ɺίετ͕େ͖͍ • ํᶄ
iPadOS18Ͱैདྷ௨ΓͷUIʹͳΔΑ͏ʹରԠ • ϝϦοτɿํᶃΑΓίετ͕খ͍͞ • σϝϦοτɿઌԆ͍ͯ͠͠Δ͚ͩͰɺ͍ͣΕ৽UIʹରԠ͢Δ͜ͱʹͳΓͦ͏
λϒόʔͷҐஔ͕ҧ͏ͷରԠ • ํᶃ ৽͍͠λϒόʔͷUIʹ߹ΘͤͯɺσβΠϯΛ৽ • ϝϦοτɿࠓޙ৽UI͕ओྲྀʹͳΔͱࢥΘΕΔ • σϝϦοτɿ΄΅શͯͷը໘ʹӨڹ͠ɺίετ͕େ͖͍ • ํᶄ
iPadOS18Ͱैདྷ௨ΓͷUIʹͳΔΑ͏ʹରԠ • ϝϦοτɿํᶃΑΓίετ͕খ͍͞ • σϝϦοτɿઌԆ͍ͯ͠͠Δ͚ͩͰɺ͍ͣΕ৽UIʹରԠ͢Δ͜ͱʹͳΓͦ͏
• λϒͷཁૉΛίϐʔͨ͠λϒόʔΛ࡞͢Δ • طଘͷλϒόʔඇදࣔʹɺΞΠςϜߴ͞Λίϐʔͨ͠λϒόʔΛaddSubView͢Δ iPadOS18Ͱैདྷ௨Γͷλϒόʔʹ͢Δ
• ҙ • UITabBarControllerଐͷTabBarͰͳ͘ɺࣗલͰ༻ҙͨ͠UITabBarͰ͋Δ • Πϝʔδͱͯ͠ը໘ʹͨͩViewΛ͚ͬͯΔ͚ͩ • Safe areaΛߟྀͯ͋͛͠ͳ͍ͱεΫϩʔϧͷߴ͞ܭࢉ͕ζϨͯ͠·͏ iPadOS18Ͱैདྷ௨Γͷλϒόʔʹ͢Δ
• ͋͘·ͰҰ࣍ରԠͰ͋Γɺ࠷ऴతʹ৽λϒόʔʹ߹Θ͍ͤͯ͘༧ఆ • ৽λϒόʔʹରԠ͍ͯ͠Δ࣮ྫগͳ͍ͷͰ༷ࢠΛݟ͍ͨ ࠓޙͷํ
ϞʔμϧͷαΠζ͕มΘͬͨ
ϞʔμϧͷαΠζ͕มΘͬͨͷରԠ • ൃੜͨ͠ࣄ
ϞʔμϧͷαΠζ͕มΘͬͨͷରԠ • ݪҼ • modalPresentationStyleΛࢦఆ͠ͳ͍߹ʹɺࣗಈͰબ͞ΕΔstyle ͕.pageSheet͔Β.formSheetʹมߋ͞Ε͍ͯͨ • ରԠ • ໌ࣔతʹstyleΛࢦఆ͢Δ
CollectionViewͰΫϥογϡ͕ൃੜ
CollectionViewͰΫϥογϡ͕ൃੜͨ͠ͷ ରԠ • cellForItemAtͰจࣈม͢Δͱ͍͏ॏΊͷॲཧΛ࣮ߦ͍ͯͨ͠ՕॴͰ Ϋϥογϡ͕ൃੜ͢ΔΑ͏ʹͳͬͨ • ςΩετΛදࣔ͢ΔͨͼʹจࣈมΛߦͳ͍ͬͯͨͷͰɺࣄલʹม ͓͖ͯ͠࠶ར༻͢ΔΑ͏ʹͨ͠
hitTestͰTextView͕λοϓͰ͖ͳ͘ ͳͬͨ
hitTestͰTextView͕λοϓͰ͖ͳ͍ͷରԠ • TextViewΛλοϓͯ͠hitTestͰUITextView͕ؼͬͯ͜ͳ͍ • super.hitTest(point, with: event)ͰฦΔ • iOS18ͰUIView •
iOS17ͰTextView
hitTestͰTextView͕λοϓͰ͖ͳ͍ͷରԠ • ViewHierarchyͰ֬ೝ͢ΔͱTextViewͷߏ͕มΘ͍ͬͯͨ iOS17 iOS18
hitTestͰTextView͕λοϓͰ͖ͳ͍ͷରԠ • औಘ͞ΕͨUIView͕TextViewͷsubViewʹؚ·Ε͍ͯΔ͔Ͳ͏͔Λఆ ͠ɺؚ·Ε͍ͯͨΒTextViewΛฦ͢Α͏ʹͨ͠
ؾΛ͚͓ͭͯ͘ͱྑ͍͜ͱ
ؾΛ͚͓ͭͯ͘ͱྑ͍͜ͱ • ࠷ॳͷಈ࡞֬ೝ͚ͩͰɺશͯͷʹؾ͔ͮͳ͍ • ରԠ͙ͯ͢͠ϦϦʔεͰͳ͘ɺ·ͣ։ൃڥʹೖΕͯɺଞͷ࡞ۀΛ ͭͭ͠όά͕ͳ͍͔֬ೝ͢Δ • 2ि͙ؒΒ͍ݟ͓ͯ͘ͱ҆৺ • ։ൃڥͰࢼݧಋೖ͢ΔظؚؒΊͯɺରԠ࣌ظΛߟ͑Δ