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
いまさらだけどiOSのHapticsを学んでみた
Search
jollyjoester
November 27, 2021
Technology
910
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
いまさらだけどiOSのHapticsを学んでみた
2021/11/27 Swift愛好会談義
https://love-swift.connpass.com/event/230401/
jollyjoester
November 27, 2021
Transcript
9 slides
いまさらだけど iOSのHapticsを学んでみた 2021/11/27 Swift愛好会 jollyjoester
きっかけ Pikminのポコポコ…が気持ちいい ポコポコ ポコポコ … ポコ … ポコ … ポコ
…
Hapticsとは Haptics = 触覚 User Interfaceとして触覚(振動)を用いる iPhoneではTaptic Engineという部品で発生させている iPhone 6sの頃から搭載
細かくイジれるようになったのはiOS10から Apple WatchとHaptic Feedbackは相性がとても良い VRの世界で物体に触れた感覚を生じさせるものとして注目されてるよ
Hapticsが使われているところ アプリアイコンを長押ししたり アプリをインストールしたり SliderやSwitch, Picker, Pull to refreshなど操作したり
どうやって実装できるの? お手軽 • UIFeedbackGenerator カスタム • Core Haptics
UIFeedbackGeneratorの例 UIFeedbackGenerator • UIImpactFeedbackGenerator(触った感、ぶつかった感) • UISelectionFeedbackGenerator(UIで選んでる時) • UINotificationFeedbackGenerator(お知らせ) さぁみんなも体験してみよう! サンプル:
https://github.com/jollyjoester/HapticsSample ※prepare()呼ぶタイミング適当だから本番で使うときは気をつけてね
どこに使うと良いの? あまり多用するとうざい。 単独ではあまり使わない。視覚のフィードバックを補完するイメージ。 e.g. Bluetooth機器との接続解除をお知らせするトースト表示とともにポコッ、くらいが ちょうど良いイメージ • 必須ではない、けど気づいて欲しいくらいの温度感 • 結果が遅延してくるもののお知らせ
• 表示と音と触覚でうまく表現できるのがいいね e.g. アプリ内の何かに触った感を出すとき • Pull to refresh(UIRefreshControl)のひっかかる感 • Pikminにさわるとき
まとめ いまさらだけどHaptics素晴らしい 手触り感気持ちいいね ユーザー体験を考えるときにちゃんと意識していこう (マナーモードにせざるを得ない状況の多い日本だと音よりHapticsが重要かも)
参考 • Human Interface Guidelines: Haptics • Apple Developer Documentation:
UIFeedbackGenerator • Apple Developer Documentation: Core Haptics
More Decks by jollyjoester
See All by jollyjoester
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
150
印西市創業実践プログラム2026 【AI活用講座】
jollyjoester
0
96
AI時代でも変わらない技術コミュニティの力 ~10年続く"ゆるい"つながりが生み出す価値~
jollyjoester
0
44
AIコードアシスタントとiOS開発
jollyjoester
1
400
市民のためのセキュリティ講座
jollyjoester
0
130
コミュニティMTG in WWDC24
jollyjoester
0
410
BengaluruでLTしてきた
jollyjoester
0
420
try! Swift Tokyo 2024
jollyjoester
0
450
エンジニアが直接会う場の価値について
jollyjoester
8
4.8k
Other Decks in Technology
See All in Technology
会社説明資料_最新版
demaecan
0
32k
Context Ontology Accelerator 入門 (業務データの意味を、AI エージェントに渡す)
inariku
PRO
3
660
LLM 基盤と kagent v0 を全部 k8s に入れてみた / Deploy both LLM and kagent v0 in k8s
kota2and3kan
0
150
Kiro Crew 入門 (手を離しても進む仕事) | 目指せ Kiro マスター 11
inariku
PRO
4
710
Steering と Hook (チームの決まりを守らせる) | 目指せ Kiro マスター 06
inariku
PRO
2
110
Kiro CLI 入門 (ターミナルと CI で使う) | 目指せ Kiro マスター 03
inariku
PRO
2
140
Shared Signals Framework 仕様解説
oidfj
0
410
ゼロから作るWebアプリの新定番!?Amplify Gen 2 × AWS Blocksで実現する「開発速度とRDBの柔軟性のいいとこ取り」
amixedcolor
1
240
In-Context Learning再入門。ICLの勾配降下的解釈の研究動向を追ってみる。
dai08srhg
1
810
「いつか使う」の「いつか」は来ない 〜AI駆動開発における「作らない」判断について〜
ikki0006
0
200
公共分野での生成AI活用
toru_kubota
1
320
[dbts2026]数十PBの超巨大データ×AI活用を支えるSnowflakeの実力〜大規模環境におけるアーキテクチャと運用のリアル〜
y_matsubara
0
130
Featured
See All Featured
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.7k
Why You Should Never Use an ORM
jnunemaker
PRO
61
10k
What does AI have to do with Human Rights?
axbom
PRO
1
2.5k
Embracing the Ebb and Flow
colly
88
5.2k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
203
77k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.9k
Thoughts on Productivity
jonyablonski
76
5.5k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.9k
Accessibility Awareness
sabderemane
1
300
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Unsuck your backbone
ammeep
672
58k