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
490
仮想カメラで切り開く拡張現実の世界
satoshi0212
0
600
macOS仮想カメラ「テロップカム」 実装方法とその先
satoshi0212
5
3.7k
ARで悪の組織の会議を実現する
satoshi0212
0
540
クロマキー合成を使い透過動画をAR空間に表示する
satoshi0212
3
9.6k
ARKit Maniacs
satoshi0212
1
3.6k
Other Decks in Programming
See All in Programming
RDoc meets YARD
okuramasafumi
4
160
AIエージェント開発、DevOps and LLMOps
ymd65536
1
370
開発チーム・開発組織の設計改善スキルの向上
masuda220
PRO
18
9.7k
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
300
Microsoft Orleans, Daprのアクターモデルを使い効率的に開発、デプロイを行うためのSekibanの試行錯誤 / Sekiban: Exploring Efficient Development and Deployment with Microsoft Orleans and Dapr Actor Models
tomohisa
0
230
OSS開発者という働き方
andpad
5
1.6k
Introducing ReActionView: A new ActionView-compatible ERB Engine @ Rails World 2025, Amsterdam
marcoroth
0
310
Namespace and Its Future
tagomoris
6
690
MCPとデザインシステムに立脚したデザインと実装の融合
yukukotani
3
1.1k
The state patternの実践 個人開発で培ったpractice集
miyanokomiya
0
160
Laravel Boost 超入門
fire_arlo
2
180
Vue・React マルチプロダクト開発を支える Vite
andpad
0
110
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
268
13k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
RailsConf 2023
tenderlove
30
1.2k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
31
2.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Raft: Consensus for Rubyists
vanstee
140
7.1k
Documentation Writing (for coders)
carmenintech
73
5k
Automating Front-end Workflow
addyosmani
1370
200k
GitHub's CSS Performance
jonrohan
1032
460k
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ͷ͕ࢀߟʹͳΔ ɹγϟυͷมԽɺݩը໘ͷҠಈɺด͡Δɺ։͘εϨογϣϧυͷมԽ ༨ஊ