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
Ionic×Angularで作る ストーリーズ風UI
Search
scrpgil
November 27, 2021
0
430
Ionic×Angularで作る ストーリーズ風UI
scrpgil
November 27, 2021
Tweet
Share
More Decks by scrpgil
See All by scrpgil
Firebase Realtime DB から ActionCable 移行のマネジメントの話
scrpgil
0
93
フレーム問題で考えてみるやる夫スレViewer
scrpgil
0
29
ChatGPTとLangChain さわってみた
scrpgil
0
96
久しぶりに ionic startしてみた
scrpgil
0
250
Ionic 6でWeb3やってみた
scrpgil
0
220
Angularで作るモバイルアプリ開発〜スタートアップの開発事情〜
scrpgil
0
640
夢のクロスプラットフォーム開発
scrpgil
0
380
Stencil JSについて
scrpgil
0
440
PWA_Toolkitについて.pdf
scrpgil
0
1.8k
Featured
See All Featured
KATA
mclloyd
29
14k
The Cult of Friendly URLs
andyhume
79
6.4k
Mobile First: as difficult as doing things right
swwweet
223
9.6k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
657
60k
Navigating Team Friction
lara
186
15k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Building Applications with DynamoDB
mza
95
6.4k
YesSQL, Process and Tooling at Scale
rocio
172
14k
Speed Design
sergeychernyshev
30
980
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
おわり