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
310
Gradleを次のステップへ
ogi2ogi
1
540
Let's Take a Deep Dive into Pager Indicators
ogi2ogi
0
930
Other Decks in Programming
See All in Programming
<title><a id="</title>君はこのHTMLをパースできるか"></a></title> #雑LT_study
pizzacat83
0
110
JAWS-UG横浜 #102 AWSサ終供養LT会 成仏できない AWS サービスたち 〜本日、三体供養します〜
maroon1st
0
260
作るコストが小さくなった時代 幸せに働くために改めて考えたいこと 〜エンジニアとして価値を出し続けるために注視している二分野〜
yuppeeng
0
130
為什麼你並不需要ViewModel / No, you don't need a ViewModel
lovee
1
440
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
290
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
4
1.8k
分散システム、なんですぐ死んでしまうん?耐障害性を高めたいあなたのためのレジリエンスパターン入門
mshibuya
7
7.1k
ビデオ通話が繋がる0.2秒で何が起きているのか
supurazako
2
150
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.2k
変わらないものが、変わるものを決める — 意図駆動開発 × イベントソーシング × イミュータブル | What Doesn't Change Decides What Can — IDD × Event Sourcing × Immutability
tomohisa
0
660
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
250
『コードを書く以外の』エンジニアリング〜課金基盤移行プロジェクト推進のためのTips4選
yuriko1211
0
550
Featured
See All Featured
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
160
Typedesign – Prime Four
hannesfritz
42
3.1k
The browser strikes back
jonoalderson
0
1.4k
Fashionably flexible responsive web design (full day workshop)
malarkey
408
67k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
640
Believing is Seeing
oripsolob
1
170
Abbi's Birthday
coloredviolet
3
8.9k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.8k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Deep Space Network (abreviated)
tonyrice
0
240
Music & Morning Musume
bryan
47
7.3k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.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ͳͲʹൺϑΝΠϧͷ༰ྔ͕ܰྔ • ෳࡶͳΞχϝʔγϣϯ࣮͘͢͠ͳΔʂ
͓ΘΓ