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
iOS 16からのロック画面Widget争奪戦に備える
Search
Ryo Tsuzukihashi
June 26, 2022
Programming
2
1.1k
iOS 16からの ロック画面Widget争奪戦に備える
YUMEMI.swift #15 ~WWDC復習会~
Ryo Tsuzukihashi
June 26, 2022
Tweet
Share
More Decks by Ryo Tsuzukihashi
See All by Ryo Tsuzukihashi
SwiftUI Transaction を徹底活用!ZOZOTOWN UI開発での活用事例
tsuzuki817
1
1.9k
レビューを増やしつつ 高評価維持するテクニック
tsuzuki817
3
1.1k
二次元コードを読み取りやすくするために 画面を強制的に明るくするのは もうやめにしませんか?👀
tsuzuki817
0
440
動画だけじゃない!iOS 15のピクチャ・イン・ピクチャを使って好きなUIを表示させよう!
tsuzuki817
3
5k
Complications and widgets: Reloadedの要約
tsuzuki817
1
1.3k
Speech framework tips
tsuzuki817
1
2.7k
Build complication in SwiftUI の要約
tsuzuki817
0
720
SwiftUI で Neumorphism!!!
tsuzuki817
2
1.9k
SwiftUIで作りながら学ぶアニメーション インジケーター編
tsuzuki817
0
620
Other Decks in Programming
See All in Programming
20250808_AIAgent勉強会_ClaudeCodeデータ分析の実運用〜競馬を題材に回収率100%の先を目指すメソッドとは〜
kkakeru
0
130
11年かかって やっとVibe Codingに 時代が追いつきましたね
yimajo
1
260
Strands Agents で実現する名刺解析アーキテクチャ
omiya0555
1
120
あのころの iPod を どうにか再生させたい
orumin
2
2.4k
What's new in Adaptive Android development
fornewid
0
140
Dart 参戦!!静的型付き言語界の隠れた実力者
kno3a87
0
180
バイブコーディングの正体——AIエージェントはソフトウェア開発を変えるか?
stakaya
5
850
あなたとJIT, 今すぐアセンブ ル
sisshiki1969
1
580
Constant integer division faster than compiler-generated code
herumi
2
570
オホーツクでコミュニティを立ち上げた理由―地方出身プログラマの挑戦 / TechRAMEN 2025 Conference
lemonade_37
2
460
0から始めるモジュラーモノリス-クリーンなモノリスを目指して
sushi0120
0
250
Gemini CLIの"強み"を知る! Gemini CLIとClaude Codeを比較してみた!
kotahisafuru
3
970
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Become a Pro
speakerdeck
PRO
29
5.5k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
BBQ
matthewcrist
89
9.8k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
How to train your dragon (web standard)
notwaldorf
96
6.2k
Embracing the Ebb and Flow
colly
86
4.8k
How to Ace a Technical Interview
jacobian
278
23k
The Power of CSS Pseudo Elements
geoffreycrofte
77
5.9k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
Bash Introduction
62gerente
614
210k
Transcript
iOS 16からの ϩοΫը໘Widget ૪ୣઓにඋえる YUMEMI.swift #15 ~WWDC復習会~
Self Introduction ᠃ڮ ྋ !UTV[VLJ Ϡϑʔגࣜձࣾ 1BZ1BZϑϦϚ J04ΞϓϦ։ൃ झຯݸਓ։ൃ
My Apps
My Apps 8JEHFUରԠ
Contents 01 LockScreen ৽͍͠ϩοΫը໘ ͷػೳ 02 Color and Rendering ৭ʹ͍ͭͯ
03 Privacy Ϣʔβʔͷϓϥό γʔΛकΔ 04 Addapted ϓϩδΣΫτʹ Ճ͢Δ
New Lock Screen
None
None
None
New Widget
Complicatioins? l ΞϓϦʹؔ͢ΔλΠϜϦʔͰؔ ࿈ੑͷߴ͍ใΛΥονϑΣ Πεʹදࣔͤ͞Δ l ෳࡶͳใΛͻͱͰཧղͰ͖ Δͷ l XBUDI04͔Β4XJGU6*Ͱ࡞Ε
Δ
accessoryCircular
accessoryRectangular
accessoryInline
accessoryCorner
Color and Rendering watch face ͱ LockScreenͷ ϨϯμϦϯάͷҧ͍ΛΔ
Color and Rendering
Color and Rendering
Color and Rendering ロック画面にはダークモードの設定がない ため、考慮しなくて良い
fullColor l ࢦఆ͞Εͨ৭௨Γʹදࣔ͞ΕΔ l ΧϥϑϧͳݟͨʹͳΔ l XBUDI04ͷΈ
accented l ࣗಈతʹ৭͚͞ΕΔ l ίϯςϯπͭͷάϧʔϓʹ͚ ΒΕϑϥοτʹண৭͞ΕΔ l ݩͷಁ໌ͷΈΛอ࣋͢Δ l XBUDI04ͷΈ
accented l XJEHFU"DFOUBCMF l αϒϏϡʔ·ͰΞΫηϯτάϧʔϓ ʹՃ
accented ΞΫηϯτΧϥʔʹΑͬͯେ͖͘ݟͨҟͳΔ
vibrant ϩοΫը໘ͷϨϯμϦϯάϞʔυ
vibrant ίϯςϯπҰ৭͞ΕΔ
vibrant ϩοΫը໘ͷഎܠʹ߹Θͤͯࣗಈతʹ৭͚͞ΕΔ AndroidのMaterial Youと同等
New SwiftUI WidgetΛΑΓྑ͘͢ΔͨΊͷ SwiftUIͷ৽ػೳ
AccessoryWidget Background എܠ͕ඞཁͳΟδΣοτʹҰ؏ͨ͠എܠΛ༩͑Δ͜ͱ͕Ͱ͖Δ
AccessoryWidgetBackground
ProgressView (interval:coundDown:) ҰͷΤϯτϦʔͰ8JEHFUΛΞχϝʔγϣϯͤ͞Δ͜ͱ͕Ͱ͖Δ
ViewThatFits ෳͷ7JFXΛࢦఆ͢Δͱར༻Մೳͳεϖʔεʹऩ·Δ࠷ॳͷίϯς ϯπϏϡʔΛදࣔ͢Δ
Privacy ϩοΫը໘ʹஔ͍ͨ8JEHFUͷ ηΩϡϦςΟΛߴΊΔ
iOS σϑΥϧτͰ ը໘ϩοΫ࣌Ͱ ίϯςϯπදࣔ͞ΕΔ ॏཁͳใԽͤ͞Δ
.privacySensitive() iOS15~ https://developer.apple.com/documentation/swiftui/view/privacysensitive(_:)
watchOS ίϯςϯπًʹͳΓ ߋ৽ස͘ͳΔ͕ ίϯςϯπදࣔ͞Εଓ͚ Δ ண͍ͯ͠ΔͱϩοΫঢ়ଶʹͳΒͣඇΞΫςΟϒ࣌ ʹৗ࣌දࣔϞʔυʹͳΔ
isLuminanceReduced
isLuminanceReduced
৽͍͠Widgetͷ Ճํ๏ طଘͷϓϩδΣΫτʹ LockScreen༻ͷWidgetΛ Ճ͢Δ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ 5BSHFUͷ8JEHFU&YUFOUJPOΛෳ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ ໊લΛΑ͠ͳʹม͑Δ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ #VOEMF*EFOUJGJFSʹ XBUDILJUBQQΛՃ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ #VJME4FUUJOHTͰ#BTF4%,Λ XBUDI04ʹมߋ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ 8BUDI"QQͷ(FOFSBMʹҠΓ ઌ΄ͲՃͨ͠8JEHFU&YUFOTJPO ΛՃ͢Δ
طଘͷXBUDI04ΞϓϦʹద༻ͤ͞Δ ४උྃʂ 8JEHFUʹ৽͍͠ϑΝϛϦʔΛαϙʔτͤ͞Δ
supportedFamiliesʹՃ
XBUDI04Λར༻͍ͯ͠Δ߹
XBUDI04Λར༻͍ͯ͠Δ߹
XBUDI04Λར༻͍ͯ͠Δ߹ XBUDI04ͷ*OUFOUࣄલʹઃఆ͞ ΕͨϦετΛఏڙ͢Δඞཁ͕͋Δ
1SFWJFXͷදࣔ QSFWJFX$POUFYU 8JEHFU1SFWJFX$POUFYU GBNJMZYYYY
$BOWBT%FWJDF4FUUJOHT 9DPEF͔Βͷػೳ ΑΓ1SFWJFX͕͍͘͢
Widget Family ઃఆͨ͠8JEHFU'BNJMZͷ1SFWJFX Λ֬ೝ͢Δ͜ͱ͕Ͱ͖Δ
Presentation ௨ৗ࣌ ϓϨʔεϗϧμʔ ϩοΫத
variants
ҙࣄ߲
ը૾ͷऔΓѻ͍ʹҙ
ϑΥϯτ ࣗಈద༻ͤ͞ΔͨΊʹσϑΥϧ τͷϑΥϯτύϥϝʔλͱϑΥϯ τελΠϧΛ͏
ϢʔβʔʹΑΔ8JEHFUͷฤू ؒҧ͍ͬͯͨΒڭ͍͑ͯͩ͘͞🙇 l -PDL4DSFFOͷ8JEHFU*OUFOUͷฤू͕ Ͱ͖ͳ͍ʢ؍ଌൣғ l ࣄલʹܾΊΒΕͨύϥϝʔλΛ͏
·ͱΊ ü ৽͍͠ϩοΫը໘ͷొʹΑΓɺϢʔβʔϢʔε έʔεʹ߹ΘͤͯϩοΫը໘Λม͑Δͱ͍͏͜ͱ͕ ༰қʹͰ͖ΔΑ͏ʹͳͬͨ ü ։ൃऀϢʔβʔͷࠣࡉͳχʔζʹԠ͑Δ͜ͱ͕Ͱ͖ ΔΑ͏ʹɺ͞·͟·ͳ8JEHFUΛ༻ҙ͢Δ͜ͱͰࠓޙ ͷϩοΫը໘૪ୣઓʹඋ͑·͠ΐ͏ LiveActivitiesのAPI公開が待ち遠しい….
͓Βͤ iOS/Android ΞϓϦΤϯδχΞ࠾༻͍ͯ͠·͢ʂ
Resources • Keynote ◦ https://developer.apple.com/wwdc22/101 • Complications and widgets: Reloaded
◦ https://developer.apple.com/videos/play/wwdc2022-10050 Videos: • "QQMFɺJ04Ͱಋೖ͞ΕΔ·ͬͨ͘৽͍͠ϩοΫը໘ͷମݧͱɺڞ ༗ͱίϛϡχέʔγϣϯͷͨΊͷ৽͍͠ํ๏Λൃද ◦ IUUQTXXXBQQMFDPNKQOFXTSPPNBQQMFVOWFJMT OFXXBZTUPTIBSFBOEDPNNVOJDBUFJOJPT • XBUDI04ϓϨϏϡʔ ◦ IUUQTXXXBQQMFDPNKQXBUDIPTXBUDIPTQSFWJFX Articles:
Thanks! Do you have any questions?