Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
柔軟性のあるUIで、多くの環境でアプリを活躍させる/iOSDC26
Search
noppefoxwolf
September 13, 2026
Design
46
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
柔軟性のあるUIで、多くの環境でアプリを活躍させる/iOSDC26
noppefoxwolf
September 13, 2026
More Decks by noppefoxwolf
See All by noppefoxwolf
High performance GIF playback/iOSDC25
noppefoxwolf
1
660
Spice up your notifications/try!Swift25
noppefoxwolf
3
850
iOSの隠されたAPIを解明し、開発効率を向上させる方法/iOSDC24
noppefoxwolf
2
1.4k
今から理解するApp Intentエコシステム/WWDC24Recap
noppefoxwolf
0
78
既存アプリをvisionOS対応してリリースした話/visionOS LT vol5
noppefoxwolf
0
230
UIのブラックボックスを探る/iOSDC23
noppefoxwolf
3
5.2k
CoreGraphicsでドット絵を描こう/iOSDC22
noppefoxwolf
0
3.3k
ランタイムデバッグのススメ/iOSDC21
noppefoxwolf
1
5.7k
google/mediapipe で始めるARアプリ開発/iOSDC2020
noppefoxwolf
1
1.7k
Other Decks in Design
See All in Design
A Corrida Maluca - Comedy Storyboard
gioli
0
110
Design dependencies
teba_eleven
0
170
【CEDEC2026】派手さと見やすさは両立できる!『Shadowverse: Worlds Beyond』エフェクト・3D背景の超進化したビジュアル設計
cygames
PRO
1
1.8k
Where Imagination Ends AI Begins
r5ni4
0
370
セブンデックス プロジェクト事例 / innovation Scenes
sevendex
1
1.8k
PAMPHLET.pdf
mhand01
0
1.7k
Signull 団体説明資料
signull
0
810
エンジニアがAI活用してスライドデザインできる世界が来たよ!
kaikou
1
460
Of Ordination and Rebellion exploration sketches
rezaline
0
220
デザインワークフローの最前線。 ログラスでのAI活用の現在地
ukaoli
1
2.8k
明日から真似できる、AIでデザインシステムを活用する方法
vivion
0
360
富山デザイン勉強会_プレゼンテーション.pdf
keita_yoshikawa
0
140
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
A better future with KSS
kneath
240
18k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
320
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
2
1.8k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
6
1.2k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
990
Practical Orchestrator
shlominoach
191
12k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Utilizing Notion as your number one productivity tool
mfonobong
4
580
The agentic SEO stack - context over prompts
schlessera
0
910
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
580
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.4k
Transcript
1
noppe ‣ DAWN for Mastodon ‣ Pococha at DeNA 2
3
iOSDCでUIの話をする 4
UIについて考えていること 5
UIについて考えていること 6
ライフステージの変化とUIの柔軟性 7
UIの柔軟性とは? 状況を問わずに価値を提供すること 8
9
10
11
アプリの前提が変わっている 単一の画面サイズを前提にできなくなっている 12
13
14
15
16
環境の変化が前提になった ‣ ウィンドウサイズが変わる ‣ 同じアプリが異なる環境に表示される ‣ 画面の形そのものも変わる → OSは「どの環境でも柔軟に見た目を変えてくれるもの」として 扱うように。
17
18
UIを観察する 19
20
21
目的 ユーザーが実現したいこと ‣ 例: 音楽を再生したい、写真を撮りたい 22
コンテキスト ユーザーが置かれている状況 ‣ iPadを使っている ‣ 怪我をしている ‣ 車を運転している ‣ 周囲が暗い
など 23
インターフェース 最終的にユーザーが目的を実現するための手段 ‣ ボタンがある ‣ 音声で呼び出せる ‣ 画面をスワイプできる ‣ など
24
例:ホーム画面 ‣ 目的:アプリを起動する ‣ コンテキスト:iPhoneを使っている ‣ インターフェース:アプリアイコンのボタンが並ぶ 25
Q.3つの要素のうち、何を柔軟にするのか 26
目的とインターフェー スが固定 コンテキストを変える必要がある ‣ 目的:アプリを起動する ‣ インターフェース:グリッドにアプリ ‣ コンテキスト:車を運転している →
車を止めて、スマホを操作する 27 のボタンが並ぶ
目的とコンテキストが 固定 インターフェースを変える必要がある ‣ 目的:アプリを起動する ‣ コンテキスト:車を運転している ‣ インターフェース:ボイスコマンドで アプリを起動できる
28
コンテキストとインタ ーフェースが固定 目的を変える必要がある ‣ コンテキスト:車を運転している ‣ インターフェース:グリッドにアプリ ‣ 目的:アプリを起動する →
断念・延 期する 29 のボタンが並ぶ
固定する要素 柔軟性が求められる要素 目的とインターフェース コンテキスト 目的とコンテキスト インターフェース インターフェースとコンテキス 目的 ト 30
A.インターフェースを柔軟にする 31
同じ目的に、複数のインターフェースを持て る 32
33
34
35
36 p=purpose
デザインデータは「ある条件での正解」 (余談1) 37
38
39
インターフェースは目的とコンテキストによって決 定する ‣ 現実世界のコンテキスト ‣ 車を運転している ‣ 老眼である ‣ ソフトウェアのコンテキスト
‣ ウィンドウのサイズ ‣ ダークモードなど 40
41
42
43
全部のパターンを用意する? 44
45
コンテキストの変化にどう応答するか ‣ 連続的な適応 ‣ 段階的な適応 46
連続的な適応 47
段階的な適応 48
49
50
ブレークポイントの見つけ方 ‣ 増えすぎると実装パターンが増えてしまう ‣ 少なすぎるとインターフェースが十分に適応できない ‣ 同じインターフェースのまま、目的を十分に達成できるかどうか 51
休憩 52
実際のレイアウトでの活用 53
コンポーネント境界を見極める 54
55
56
57
連続的レイアウトと段階的レイアウト 58
59
60
連続的なレイアウトのパターン 枠のサイズが変化する時の対応 1. 枠にサイズを合わせる 2. ビューのサイズを優先する 61
枠のサイズに合わせる 62
枠に合わせたスクロールビューを挟む 63
固定サイズは問題が起きやすい 64
ビュー自身のサイズを優先する 65
66
段階的なレイアウト 67
段階的なレイアウトのパターン 境界に応じて、構造や表現そのものを切り替える 1. 表示する情報を増やす・減らす 2. 情報をまとめる・展開する 3. レイアウトの構造を組み替える 68
1.表示する情報を増やす・減らす 69
1.表示する情報を増やす・減らす ‣ 優先度の高いプロパティを残す ‣ 優先度は目的から逆算する 70
1.表示する情報を増やす・減らす 71
2.情報をまとめる・展開する ‣ セクション化して、格納・展開できるようにする。 72
2.情報をまとめる・展開する 73
AIによる新しい段階的レイアウトのパターン (余談2) 74
75
76
連続的レイアウトと段階的レイアウトを 組み合わせて柔軟性を実現する 77
段階的レイアウトの発展系 段階的なレイアウトはビュー内で完結するものに限らない ナビゲーションを含む構造の切り替えにも活用できる 78
79
コンテナビューコントローラ UIKitやSwiftUIでは、このような高度な段階的レイアウトを持たせ たコンテナビューコントローラーを標準で提供している。 80
81
82
83
標準UIは柔軟性においてベストプラクティス ‣ 複雑なコンテキストの変化に対応するためには、標準APIを使う のがベストプラクティス ‣ カスタム実装は、作り手が意識したコンテキストにしか対応で きない ‣ 標準APIと同レベルの柔軟性を自作するなら、それなりの覚悟が 必要
84
まとめ 85
絵としてのUIを作るのではなく、ユーザーの 目的とコンテキストから導出されるUIを作る 86
コンテキストをどこまで考慮できるかの勝負 自分以外の経験、異なる視点のユーザーの声 に耳を傾ける 87
無限に存在するコンテキストの組み合わせに 対して、作るべきものを見抜く 88
ご清聴ありがとうございました 89
Q&A 90
91