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
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
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
SwiftUIで作るvisionOS向けTabViewUIの知見
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
さくたま
July 26, 2023
Programming
480
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
SwiftUIで作るvisionOS向けTabViewUIの知見
https://connpass.com/event/291022/
こちらで発表した内容です!
さくたま
July 26, 2023
More Decks by さくたま
See All by さくたま
第36回OEDC: マイコンを使った『アイテム』でXR体験をリッチに
sakutama_11
0
130
Unity Android XR入門
sakutama_11
0
530
AR×ドラムで切り拓く音楽表現【XRKaigi 2024】
sakutama_11
0
150
「ARドラム」の裏側 【Iwaken Lab. Tech Conference】
sakutama_11
1
2.7k
8th Wall × Babylon.jsでhavok physics 【Babylon.js ゆるほめLT会 vol.2】
sakutama_11
0
1k
【NeRF撮り方LT会】NeRFが空間を理解する仕組み
sakutama_11
1
1.8k
Other Decks in Programming
See All in Programming
APNsからLive Activityを開始する話
yumnumm
0
150
モデルのリファクタリングが難しいと思ったら、そもそも複雑だったのはビジネス仕様だった ? / is-the-business-domain-the-real-complexity
hatsu38
0
440
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
450
[ハンズオン]AIへの指示だけで「五目並べ」を作ってみよう
satoshi256kbyte
1
340
AWSに止められる覚悟してますか?
morizo_1984
2
510
更なる可用性を求めて、5年間運用したKotlinのアプリケーションをGoでリプレイスする話
ken_tunc
0
440
App Storeの外へ──日本のiOSサイドローディング入門 for iOSDC Japan 2026
yuukiw00w
0
310
パズルゲームの作り方 / how to make puzzle games
kaityo256
PRO
2
270
phperだってパンチカードでコーディングしたい
o0h
PRO
0
200
難しいけど、読めた。- OSSの入口に立った話。
sts11142
0
140
ゲームコントローラやキーボードのファームウェアをSwiftで書く
kishikawakatsumi
1
280
プロダクトコードからライブラリの境界を見つける
elmetal
PRO
0
100
Featured
See All Featured
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
2
2.2k
SEO Brein meetup: CTRL+C is not how to scale international SEO
lindahogenes
2
2.9k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
400
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
1
550
Navigating Weather and Climate Data
rabernat
0
550
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
A better future with KSS
kneath
240
18k
Building Adaptive Systems
keathley
44
3.2k
Tell your own story through comics
letsgokoyo
1
1.1k
Transcript
SwiftUIで作るvisionOS向け TabViewUIの知見 さくたま
自己紹介 #M1 #慶應 #CG研 #IwakenLab #MESONインターン #NeRF #ドラム #ARステージ演出 #Adobeファン
#Nianticファン
話すこと • TabViewの見た目 https://zenn.dev/meson/articles/visionos-tabview ◦ 種類 ◦ Ornament • SwiftUI開発でのデザイナーさんとの連携
◦ WWDC Designセッション ◦ Figma テンプレート ◦ エンジニアがオプションを検証 • マルチウィンドウの使い方難しい ◦ 最前ウィンドウ管理がうまくいかなかった
作ったもの • 音声認識→検索アプリ • Windowベース • SwiftUI • 2つのウィンドウ •
ChatGPT検索 ARISE - Decode Vision Pro でデモ
公式ドキュメント • SwiftUI Doc https://developer.apple.com/documentation/swiftui/tabview • Design Doc https://developer.apple.com/design/human-interface-guidelines/tab-views •
WWDC Session(必見) https://developer.apple.com/videos/play/wwdc2023/10109/
TabViewの見た目 方法は二つ • TabViewを使ってTabViewStyleでスタイルを指定 • TabView + PickerでPicker部分を別に実装
TabViewの見た目 DefaultTabViewStyle
TabViewの見た目 Ornament • ウィンドウの内容と,コントロールUIを分離できる • 補助的な情報を表示できる • 視線が当たっていない時最小化 →視線が当たった(ユーザーが必要な)時だけ情報を出す •
なるべくデフォルトのデザインを使う ToolBar (内容はそのままで,操作を切り替える ) TabView (内容を切り替える)
TabViewの見た目 PageTabViewStyle
TabViewの見た目 (Picker + TabView) SegmentedPickerStyle MenuPickerStyle WheelPickerStyle NavigationLinkPickerStyle
TabViewの見た目 (Picker をOrnament化) SegmentedPickerStyle MenuPickerStyle WheelPickerStyle NavigationLinkPickerStyle ❌
話すこと • TabViewの見た目 ◦ 種類 ◦ Ornament • SwiftUI開発でのデザイナーさんとの連携 ◦
WWDC Designセッション ◦ Figma テンプレート ◦ エンジニアがオプションを検証 • マルチウィンドウの使い方難しい ◦ 最前ウィンドウ管理がうまくいかなかった
デザイナーさんとの連携 WWDC23のうち特にデザイナー&エンジニアの共通認識にするべきと思ったもの
デザイナーさんとの連携 Figma • パーツの名前がわかって ドキュメントを調べやすい https://www.figma.com/community/file/1253443272911187215
デザイナーさんとの連携 1. 推奨されているパーツや使い方を共通認識として理解する ◦ WWDC セッション ◦ Figma ◦ ドキュメント
2. 推奨されていないが実現可能なものをエンジニアが検証する 3. 実現したいケースに最適なUI設計を「選ぶ」 SwiftUIでは(今の段階では?)「パーツを組み合わせて自由に作る」というより 「UI構成全体を提示されているものから選ぶ」というつもりの方が良いのでは
話すこと • TabViewの見た目 ◦ 種類 ◦ Ornament • SwiftUI開発でのデザイナーさんとの連携 ◦
WWDC Designセッション ◦ Figma テンプレート ◦ エンジニアがオプションを検証 • マルチウィンドウの使い方難しい ◦ 最前ウィンドウ管理がうまくいかなかった
マルチウィンドウ難しい Ornamentのドキュメントより 補助的なコントロールや情報を提供するには、別ウィンドウではなくオーナメントを 使用します。関連する機能を提供するためにオーナメントを使用することで、人々が 個別に管理しなければならない追加のウィンドウを開くことを避けることができま す。 →複数のウィンドウを使うことはあまり推奨されていない(SplitViewなど使う) →macOSのマルチウィンドウよりは実用性あると思うけど...
マルチウィンドウ難しい (余談) 最前ウィンドウ管理ができなかった 調査中...(というか後回しになり中...) (↓雑メモ) https://zenn.dev/sakutama_11/scraps/f393837ed4d5ac
まとめ ドキュメントやWWDCセッションを見てSwiftUIで使える選択肢を調査する →情報多いので共有,日本語まとめ超大事! TabViewについてまとめたのでぜひ見てください https://zenn.dev/meson/articles/visionos-tabview 組み立てて作るというよりは,Appleが推奨する構成の選択肢から「選ぶ」