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
Ionic×Angularで作る ストーリーズ風UI
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
scrpgil
November 27, 2021
490
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Ionic×Angularで作る ストーリーズ風UI
scrpgil
November 27, 2021
More Decks by scrpgil
See All by scrpgil
Firebase Realtime DB から ActionCable 移行のマネジメントの話
scrpgil
0
130
フレーム問題で考えてみるやる夫スレViewer
scrpgil
0
170
ChatGPTとLangChain さわってみた
scrpgil
0
130
久しぶりに ionic startしてみた
scrpgil
0
280
Ionic 6でWeb3やってみた
scrpgil
0
250
Angularで作るモバイルアプリ開発〜スタートアップの開発事情〜
scrpgil
0
730
夢のクロスプラットフォーム開発
scrpgil
0
410
Stencil JSについて
scrpgil
0
470
PWA_Toolkitについて.pdf
scrpgil
0
2.1k
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
310
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
350
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
720
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
600
Code Review Best Practice
trishagee
74
20k
Music & Morning Musume
bryan
48
7.4k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
460
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
260
Context Engineering - Making Every Token Count
addyosmani
9
1.2k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
7k
Transcript
IonicとAngularで作る ストーリーズ風UI 株式会社キネカ 榊原宏祐
自己紹介 ・榊原宏祐 ・株式会社キネカ所属 ・エンタメマッチングアプリ「pato」の開発 ・patoの開発からコーポレート、採用を担当 ・Twitter:@scrpgil
日本初エンタメマッチングアプリとして 2016年にリリース。最短30分で、近く にいるエンタメキャストを呼ぶことがで きるサービス。 経営者層を中心に、口コミで広まって おり、サービス開始以来、多くのユー ザーに利用される。
ストーリーズとは?
ストーリーズの説明 https://bit.ly/3nCECmx • Instagramの写真投稿機能 • 一定時間で写真が自動的に切り替わ る • 今では様々なサービスで同様の UIが
使われている Instagram
ストーリーズ実装の3つのポイント • ポップイン表示 • スライドのアニメーション • プログレスバー
ポップイン • ストーリーを開く時のアニメーション • クリックした場所から拡大されるように開くの が特徴
スライドのアニメーション • ストーリー切り替えるときのアニメーション • 立体的に切り替わるのが特徴
プログレスバー • ストーリーの経過時間を表示する • アニメーションの終了と共に、次のストーリー へ切り替わる • 写真や動画によって時間が可変で変わる
Ionicについて Ionicは、モバイルアプリ向けのUIフレーム ワーク集 Webコンポーネントで作成されており、 Angularと組み合わせれば、Webネイティブ の技術で高品質なモバイル向けアプリを簡 単に作成できる
ポップインの実装1 • Ionic Modalはデフォルトだと下からスライ ドするモーダル • アニメーションはカスタマイズ可能
ポップインの実装1 • Ionic Modalはデフォルトだと下からスライ ドするモーダル • アニメーションはカスタマイズ可能 • 公式がアニメーションのサンプルを提供し ていくれている。https://bit.ly/3HRjKjE
ポップインの実装1 • Ionic Modalはデフォルトだと下からスライ ドするモーダル • アニメーションはカスタマイズ可能 • 公式がアニメーションのサンプルを提供し ていくれている。https://bit.ly/3HRjKjE
ポップインの実装2 • クリックイベントを取得する • event内のclientX、clientYがクリックした位 置の縦軸、横軸 • この情報を使ってアニメーションのコードを書 き換え
ポップインの実装2 • クリックイベントを取得する • event内のclientX、clientYがクリックした位 置の縦軸、横軸 • この情報を使ってアニメーションのコードを書 き換え
ポップインの実装3 • 完成 • 閉じるときはIonicアニメーションで逆描画 (revers)させる • opacityは1のままのほうがそれっぽい
スライドアニメーションの 実装1 • Ionic Slideを使って実装 • デフォルトは横スライドだが、カスタマイズ可能 • 公式でcubeアニメーションのカスタムアニメー ションのコードを提供
https://bit.ly/3FCoMyi
スライドアニメーションの 実装2 • Cubeアニメーションをそのまま使うと違和感が ある • フルサイズで描画すると角が画面から見切れる のが原因 • ドラッグ中はサイズを調整する
https://bit.ly/30PtQR9
スライドアニメーションの 実装3 • ドラッグ中のイベントハンドリング はIonicSlideが提供してくれてい る • ドラッグ中の場合、少し縮小 • 開始時と終了時で、アニメーショ
ンの速度も調整
スライドアニメーションの 実装4 • 完成
プログレスバーの 実装1 • ストーリーをどれくらい表示するか示すもの • requestAnimationを使うなど、いろいろな方 法がありますが、今回は CSSアニメーションを 利用している •
zuck.jsというライブラリを参考 https://github.com/ramon82/zuck.js/
プログレスバーの 実装2 • (animationend)で終了時のイベントをハンド リングする • アニメーション終了時に次のストーリーへ移 動 • 動画は、(loadedmetadata)でmetadata読み
込みをハンドリングし、動画の再生時間を取 得
プログレスバーの 実装3 • 完成
ストーリー風UIの完成 • 完成したサイト https://ionic-angular-stories-ui.netlify.app/ • ソースコード https://github.com/scrpgil/ionic-angular-s troies-ui
会社紹介 • 株式会社キネカ • 2017年1月設立したスタートアップ • 平均年齢:23~24歳 ◦
リファラル中心に人が増えています
採用案内 • Angularを使える or 使いたいエンジニアを募集中 ◦ 未経験 ◦ ベテラン
• patoの開発から、新規事業まで ◦ 入社1ヶ月目:サーバー&クライアント関わる開発に参加 ◦ 入社半年:新機能の開発に携わった ◦ フリーランス:Angularのバージョンアップ • Angular好きはもちろん、自分でプロダクト開発したい方ならぜひ。 • Meety、Qiita JobまたはTwitterで声をかけてください! Meety Qiita Job Twitter
おわり