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
OG1
April 20, 2023
Programming
1.6k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
リッチなアニメーションどうやって実装していますか?
OG1
April 20, 2023
More Decks by OG1
See All by OG1
Get started with Compose Multiplatform!
ogi2ogi
1
3.1k
Compose Multiplatform入門してみた
ogi2ogi
0
300
Gradleを次のステップへ
ogi2ogi
1
530
Let's Take a Deep Dive into Pager Indicators
ogi2ogi
0
920
Other Decks in Programming
See All in Programming
さぁV100、メモリをお食べ・・・
nilpe
0
160
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
5.4k
生成AI時代にこそ効くGo | Why Go Works in the Age of Generative AI
mom0tomo
8
3.3k
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
980
The ROI of Quarkus for Spring Boot Applications
hollycummins
0
140
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.7k
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
220
技術記事、 専門家としてのプログラマ、 言語化
mizchi
13
6.6k
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
980
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
130
はてなアカウント基盤 State of the Union
cockscomb
1
970
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
Featured
See All Featured
Docker and Python
trallard
47
3.9k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.8k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.4k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
620
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
140
Deep Space Network (abreviated)
tonyrice
0
210
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
250
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
250
Agile that works and the tools we love
rasmusluckow
331
22k
First, design no harm
axbom
PRO
2
1.2k
Speed Design
sergeychernyshev
33
1.9k
Transcript
ϦονͳΞχϝʔγϣϯ Ͳ͏࣮͍ͬͯͯ͠·͔͢ʁ ϋʔυϧܹLTେձοʂ#02 2023-04-20 OG1
ࢯ໊ɿTsuyoshi Ogihara ॴଐɿגࣜձࣾVoicy ۀɿAndroidΤϯδχΞ झຯɿπʔϦϯά/VRήʔϜ/DTM ຊΑΖ͓͘͠ئ͍͠·͢ʂ ೖࣾɿ2022.07~ @ogi2ogi
ϦονͳΞχϝʔγϣϯ Ͳ͏࣮͍ͬͯͯ͠·͔͢ʁ
ϦονͳΞχϝʔγϣϯ ྫ͑ɺɺɺ ϩʔσΟϯάΞχϝʔγϣϯ Կ͔ΞΫγϣϯʹରͯ͠දࣔ
ํ๏ᶃɹgifϦιʔεͱͯ͠ඳը͢Δ
ํ๏ᶃɹgifϦιʔεͱͯ͠ඳը͢Δ //... val url = "gifϦιʔεͷURLϦιʔε໊" Glide.with(fragment) .load(url) .into(imageView) //....
͍͍ײ͡👍 Androidͷ߹ͷҰྫ https://bumptech.github.io/glide/
ํ๏ᶃɹgifϦιʔεͱͯ͠ඳը͢Δ //... val url = "gifϦιʔεͷURLϦιʔε໊" Glide.with(fragment) .load(url) .into(imageView) //....
͍͍ײ͡👍 🤔gifϦιʔεͷαΠζେ͖͍ 🤔ιʔεͰ৭Λม͍͑ͨ Androidͷ߹ͷҰྫ https://bumptech.github.io/glide/
ํ๏ᶄɹLottieϥΠϒϥϦΛ͏
ํ๏ᶄɹLottieϥΠϒϥϦΛ͏ • Android/iOS/Windows/WebͳͲ ɹɹෳͷϓϥοτϑΥʔϜʹରԠ • JSONϕʔεͷΞχϝʔγϣϯϑΝΠϧΛѻ͏ • gifʹൺܰྔͰ៉ྷͳΞχϝʔγϣϯϑΝΠϧ https://airbnb.design/lottie/ Lottieͱ
ํ๏ᶄɹLottieϥΠϒϥϦΛ͏ //… ɹval composition by rememberLottieComposition( ɹ LottieCompositionSpec.RawRes(LottieͷJSONϦιʔε) ɹ) val
dynamicProperties = rememberLottieDynamicProperties { //ΞχϝʔγϣϯϦιʔεͷ৭ΛมߋͰ͖Δ val property = LottieProperty.STROKE_COLOR val newColor = Color(0xFFFF0000) val keyPath = "Fill 1".toKeyPath() rememberLottieDynamicProperty(property, newColor, keyPath) } LottieAnimation( composition = composition, dynamicProperties = dynamicProperties, ) //.... ͞Βʹ͍͍ײ͡👍 👍ϦιʔεϑΝΠϧ͕ܰྔ 👍ιʔεͰಈతʹ৭ΛมߋՄ Androidͷ߹ͷҰྫ 👍એݴతUIʹରԠ Ξχϝʔγϣϯදࣔ
·ͱΊ
• LottieϥΠϒϥϦʹ͍ͭͯհ͠·ͨ͠ • 1ͭͷJSONϑΝΠϧͰෳͷϓϥοτϑΥʔϜʹ࣮ग़དྷΔ • gifͳͲʹൺϑΝΠϧͷ༰ྔ͕ܰྔ • ෳࡶͳΞχϝʔγϣϯ࣮͘͢͠ͳΔʂ
͓ΘΓ