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
インタラクティブ画面遷移の実践的解説
Search
satoshi0212
September 17, 2017
Programming
5
6.1k
インタラクティブ画面遷移の実践的解説
補足: 動画埋め込み部分、Xcodeでの説明を追記した版を別途更新予定です。
satoshi0212
September 17, 2017
Tweet
Share
More Decks by satoshi0212
See All by satoshi0212
macOSで自分のカメラを作ってみよう - Core Media IO Extensions
satoshi0212
3
1.4k
NDIとARKitを連動させた新しい映像表現
satoshi0212
3
1.1k
100日間AR表現を実装して見つけた面白い実装を全力解説
satoshi0212
5
2k
Working on mobile AR implementation, what I've implemented and beyond
satoshi0212
0
480
仮想カメラで切り開く拡張現実の世界
satoshi0212
0
590
macOS仮想カメラ「テロップカム」 実装方法とその先
satoshi0212
5
3.7k
ARで悪の組織の会議を実現する
satoshi0212
0
520
クロマキー合成を使い透過動画をAR空間に表示する
satoshi0212
3
9.6k
ARKit Maniacs
satoshi0212
1
3.6k
Other Decks in Programming
See All in Programming
Composerが「依存解決」のためにどんな工夫をしているか #phpcon
o0h
PRO
1
260
ニーリーにおけるプロダクトエンジニア
nealle
0
830
git worktree × Claude Code × MCP ~生成AI時代の並列開発フロー~
hisuzuya
1
570
チームのテスト力を総合的に鍛えて品質、スピード、レジリエンスを共立させる/Testing approach that improves quality, speed, and resilience
goyoki
5
870
20250704_教育事業におけるアジャイルなデータ基盤構築
hanon52_
5
790
生成AI時代のコンポーネントライブラリの作り方
touyou
1
210
プロダクト志向なエンジニアがもう一歩先の価値を目指すために意識したこと
nealle
0
130
なんとなくわかった気になるブロックテーマ入門/contents.nagoya 2025 6.28
chiilog
1
270
技術同人誌をMCP Serverにしてみた
74th
1
640
NPOでのDevinの活用
codeforeveryone
0
830
Rails Frontend Evolution: It Was a Setup All Along
skryukov
0
140
たった 1 枚の PHP ファイルで実装する MCP サーバ / MCP Server with Vanilla PHP
okashoi
1
250
Featured
See All Featured
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Speed Design
sergeychernyshev
32
1k
Unsuck your backbone
ammeep
671
58k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
What's in a price? How to price your products and services
michaelherold
246
12k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
Raft: Consensus for Rubyists
vanstee
140
7k
4 Signs Your Business is Dying
shpigford
184
22k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
Transcript
ΠϯλϥΫςΟϒը໘ભҠ ͷ࣮ફతղઆ ෦ ஐ גࣜձࣾAbemaTV 2017/9/16 iOSDC
None
Satoshi Hattori satoshi0212 AbemaTV Twitter: @shmdevelop ৽͍ٕ͠ज़ͱɺͦͷগ͠มΘ͍ͬͨํ͕େ͖ TechCrunch Tokyo 2015
Hackathon ༏ल Mizuho.Hack ༏ल Microsoft MPC Hackathon TMCN Hack Cars Days 2015 χϑςΟ MUSICIANS HACKATHON 2015 ༏ल
͜͜ͰલఏΛڞ༗
ϲ݄લͷແͳࢲɺ͜Μͳൃද༰͕৺͔Βཉ͔ͬͨ͠...ʂ iOS9 Ҏ߱Λର ͭ·Γ iOS10͔Βͷػೳ͍ͬͯ·ͤΜ ·ͨࠓճͷ࣮Ͱ֎෦ϥΠϒϥϦΛ༻͍ͯ͠·ͤΜ
ࠓ͢༰ ΠϯλϥΫςΟϒը໘ભҠͱ ࣮ղઆ ɹɹ1. Ϟʔμϧը໘ͷΠϯλϥΫςΟϒԽ ɹɹ2. ಉҰը໘ͰͷΠϯλϥΫςΟϒঢ়ଶભҠ
ΠϯλϥΫςΟϒը໘ભҠͱ
Ϣʔβૢ࡞ʹΑΔมԽྔʹԠͨ͡ τϥϯδγϣϯΞχϝʔγϣϯ
ΧελϜτϥϯδγϣϯ + α
SafariͷΤοδεϫΠϓ
ʮભҠʹΠϯλϥΫςΟϒੑΛՃ͢Δʯ
“ΞχϝʔγϣϯΛΠϯλϥΫςΟϒʹ͢Δʹɺ UIPercentDrivenInteractiveTransition ΦϒδΣΫτΛ༻͢Δͷ͕ ࠷؆୯Ͱ͢ɻUIPercentDrivenInteractiveTransition ΦϒδΣΫτ ɺطଘͷΞχϝʔλʔΦϒδΣΫτͱ࿈ܞͯ͠Ξχϝʔγϣϯͷλ ΠϛϯάΛ੍ޚ͠·͢ɻ” Apple "View Controller
Programming Guide for iOS" ΑΓҾ༻ ʮભҠʹΠϯλϥΫςΟϒੑΛՃ͢Δʯ
ࣸਅ
AWA
࣮ફฤ: 1 Ϟʔμϧը໘ͷΠϯλϥΫςΟϒԽ
ݩͷঢ়ଶ
ݩͷঢ়ଶ presentͰը໘શମʹϞʔμϧදࣔ
తͱ͢Δঢ়ଶ
ΠϯλϥΫςΟϒʹ͢Δ͜ͱ ը໘ͷ·Ͱͷදࣔʹ͢Δ͜ͱ
ΠϯλϥΫςΟϒʹ͢Δ·Ͱ
1. dismissτϥϯδγϣϯΛ੍ޚ͢ΔUIViewControllerAnimatedTransitioning ͷ ࣮ΫϥεͱͦΕΛ͏ͨΊͷϓϩτίϧ࡞ 2. Ϟʔμϧը໘ʹϓϩτίϧద༻ 3. දࣔݩը໘ͰUIViewControllerTransitioningDelegateΛ࣮ ΠϯλϥΫςΟϒʹ͢Δ·Ͱ
શը໘Ͱͳ͘ը໘ͷҰ෦ΛදࣔྖҬʹ͢Δ·Ͱ
1. UIPresentationControllerΛ࣮͢ΔΫϥεΛ࡞ 2. දࣔݩը໘ͰUIViewControllerTransitioningDelegateͰݺͼग़͠Ճ શը໘Ͱͳ͘ը໘ͷҰ෦ΛදࣔྖҬʹ͢Δ·Ͱ
Xcode
࣮ફฤ: 2 ಉҰը໘ͰͷΠϯλϥΫςΟϒঢ়ଶભҠ
ݩͷঢ়ଶ ΠϯλϥΫςΟϒੑͳ͠
తͱ͢Δঢ়ଶ
͔ͳΓΠϯλϥΫςΟϒʂ
͋Ε...
Present / Dismiss Push / Pop Ͱ ࣮ݱͰ͖Δؾ͕͠ͳ͍ͧ...
ը໘ͷΠϯλϥΫςΟϒͳঢ়ଶભҠ
ը໘ͷΠϯλϥΫςΟϒͳঢ়ଶભҠ CGAffineTransformར༻ॲཧͱalphaௐ UIScrollViewར༻ʹΑΔprogressੜͰ࣮ݱͨ͠
Xcode
·ͱΊ
·ͱΊ - UIPercentDrivenInteractiveTransition ΦϒδΣΫτͱྑ͘ͳΖ͏ - ը໘ͷΠϯλϥΫςΟϒͳঢ়ଶભҠͰɺCGAffineTransformར༻Ͱͷ ॲཧͱalphaௐΛɺUIScrollViewར༻ʹΑΔprogressੜͰ࣮ݱͨ͠
ΞϓϦΛૉఢʹ͍ͯ͜͠͏ͥʂ
Enjoy! iOSDC 2017
- എܠϒϥʔɺυϩοϓγϟυɺ্ͷΈؙ֯ͷಉ࣮࣌ݱ·͡େมͩͬͨ - ॎɺԣɺiPadରԠͨ͠AutoLayoutΈ͖ͬͨͥʂ - αΠόʔΤʔδΣϯτϒʔεʹؾܰʹֻ͚͠ʹ͖͍ͯͩ͘͞ - Appleͷ͕ࢀߟʹͳΔ ɹγϟυͷมԽɺݩը໘ͷҠಈɺด͡Δɺ։͘εϨογϣϧυͷมԽ ༨ஊ