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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
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
SREチームをどう作り、どう育てるか ― Findy横断SREのマネジメント
rvirus0817
0
290
小さく始めるBCP ― 多プロダクト環境で始める最初の一歩
kekke_n
1
430
変化するコーディングエージェントとの現実的な付き合い方 〜Cursor安定択説と、ツールに依存しない「資産」〜
empitsu
4
1.4k
Webhook best practices for rock solid and resilient deployments
glaforge
1
290
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.5k
CDK対応したAWS DevOps Agentを試そう_20260201
masakiokuda
1
320
SREが向き合う大規模リアーキテクチャ 〜信頼性とアジリティの両立〜
zepprix
0
460
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
200
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
360
Bill One急成長の舞台裏 開発組織が直面した失敗と教訓
sansantech
PRO
2
380
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.9k
Data Hubグループ 紹介資料
sansan33
PRO
0
2.7k
Featured
See All Featured
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
270
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Code Review Best Practice
trishagee
74
20k
Navigating Team Friction
lara
192
16k
Context Engineering - Making Every Token Count
addyosmani
9
660
Deep Space Network (abreviated)
tonyrice
0
49
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
0
260
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
410
Exploring anti-patterns in Rails
aemeredith
2
250
Paper Plane
katiecoart
PRO
0
46k
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ि͙ؒΒ͍ݟ͓ͯ͘ͱ҆৺ • ։ൃڥͰࢼݧಋೖ͢ΔظؚؒΊͯɺରԠ࣌ظΛߟ͑Δ