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
6.4k
5
Share
インタラクティブ画面遷移の実践的解説
補足: 動画埋め込み部分、Xcodeでの説明を追記した版を別途更新予定です。
satoshi0212
September 17, 2017
More Decks by satoshi0212
See All by satoshi0212
macOSで自分のカメラを作ってみよう - Core Media IO Extensions
satoshi0212
3
1.6k
NDIとARKitを連動させた新しい映像表現
satoshi0212
3
1.3k
100日間AR表現を実装して見つけた面白い実装を全力解説
satoshi0212
5
2.2k
Working on mobile AR implementation, what I've implemented and beyond
satoshi0212
0
560
仮想カメラで切り開く拡張現実の世界
satoshi0212
0
650
macOS仮想カメラ「テロップカム」 実装方法とその先
satoshi0212
5
3.9k
ARで悪の組織の会議を実現する
satoshi0212
0
610
クロマキー合成を使い透過動画をAR空間に表示する
satoshi0212
3
10k
ARKit Maniacs
satoshi0212
1
3.8k
Other Decks in Programming
See All in Programming
[BalkanRuby 2026] Drop your app/services!
palkan
3
430
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
390
Skillは並べた。動かなかった。契約で繋いだ。— 65個のSkillから、自走する開発サイクルへ
junholee
0
620
Hive Metastoreを通して学ぶIceberg REST Catalog ― 仕様から実装まで
okumin
0
150
GoogleCloudとterraform完全に理解した
terisuke
1
200
Are We Really Coding 10× Faster with AI?
kohzas
0
180
空間オーディオの活用
objectiveaudio
0
150
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
500
20260514 - build with ai 2026 - build LINE Bot with Gemini CLI
line_developers_tw
PRO
0
450
20年以上続くプロダクトでも使い続けられる静的解析ツールを求めて
matsuo_atsushi
0
150
SkillsをS3 Filesに置く時のあれこれ
watany
3
1.6k
いつか誰かが、と思っていた フロントエンド刷新5年間の実践知
kiichisugihara
1
280
Featured
See All Featured
Ethics towards AI in product and experience design
skipperchong
2
270
Facilitating Awesome Meetings
lara
57
6.8k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
30k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Heart Work Chapter 1 - Part 1
lfama
PRO
7
35k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
So, you think you're a good person
axbom
PRO
2
2k
The SEO identity crisis: Don't let AI make you average
varn
0
460
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.6k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
130
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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ͷ͕ࢀߟʹͳΔ ɹγϟυͷมԽɺݩը໘ͷҠಈɺด͡Δɺ։͘εϨογϣϧυͷมԽ ༨ஊ