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
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.5k
顧客の言葉を、そのまま信じない勇気
yamatai1212
1
360
Amazon Bedrock Knowledge Basesチャンキング解説!
aoinoguchi
0
150
Frontier Agents (Kiro autonomous agent / AWS Security Agent / AWS DevOps Agent) の紹介
msysh
3
180
ランサムウェア対策としてのpnpm導入のススメ
ishikawa_satoru
0
140
こんなところでも(地味に)活躍するImage Modeさんを知ってるかい?- Image Mode for OpenShift -
tsukaman
0
140
OCI Database Management サービス詳細
oracle4engineer
PRO
1
7.4k
M&A 後の統合をどう進めるか ─ ナレッジワーク × Poetics が実践した組織とシステムの融合
kworkdev
PRO
1
460
AI駆動開発を事業のコアに置く
tasukuonizawa
1
220
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
470
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
410
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
190
Featured
See All Featured
Docker and Python
trallard
47
3.7k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Why Our Code Smells
bkeepers
PRO
340
58k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.1k
Scaling GitHub
holman
464
140k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
170
How GitHub (no longer) Works
holman
316
140k
Mobile First: as difficult as doing things right
swwweet
225
10k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
62
Six Lessons from altMBA
skipperchong
29
4.1k
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ि͙ؒΒ͍ݟ͓ͯ͘ͱ҆৺ • ։ൃڥͰࢼݧಋೖ͢ΔظؚؒΊͯɺରԠ࣌ظΛߟ͑Δ