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
Play with animations! (2015)
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Omar Miatello
October 04, 2015
Technology
36
0
Share
Play with animations! (2015)
Material Design: Animation Meaningful transitions Hierarchical timing
Omar Miatello
October 04, 2015
More Decks by Omar Miatello
See All by Omar Miatello
Build your: "Hey Google, what is the next ..."
omarmiatello
0
42
Creating a Persona: Intro Conversational Design [Assistant Content Bundle]
omarmiatello
0
49
Google Cloud Functions: try { Kotlin } insteadOf JavaScript
omarmiatello
1
280
Firebase Remote Config + Kotlin = EasyFRC
omarmiatello
0
630
AARRR, Pirate Metrics with Firebase for Android (now in real time!)
omarmiatello
0
99
Android & Kotlin: The code awakens (episode 03) - 3/3
omarmiatello
0
93
Android & Kotlin: The code awakens (episode 02) - 2/3
omarmiatello
0
62
Android & Kotlin: The code awakens (episode 01) - 1/3
omarmiatello
0
73
Kotlin: lo Swift di Android
omarmiatello
1
66
Other Decks in Technology
See All in Technology
Gradle×GitHub_ActionsでCI時間を約50%短縮 ジョブ分割の設計と落とし穴 / Cutting CI Time by ~50% with Gradle and GitHub Actions: Job-Splitting Design and Pitfalls
takatty
0
490
JICUG あなたのAI駆動開発パートナー IBM Bob を使ったアプリ開発
1ftseabass
PRO
0
110
はじめてのAI-DLC
yoshidashingo
2
610
Kiro CLI v2.0.0がやってきた!
kentapapa
0
200
OpenID Connectによるサービス間連携
takesection
0
130
OpenClawとHermesAgentでAI新入社員を作った話
takanoriyanada
0
130
エンジニアは生成AIと どのように向き合うべきか? ことばの意味という観点から
verypluming
3
280
コードレビューを制するチームがソフトウェアデリバリーのフローを制す / Beyond Code Review: Distributing Its Responsibilities Across the SDLC
mtx2s
1
160
最低限これだけ押さえれ大丈夫_Claude Enterprise/Team企業展開ガバナンス入門
tkikuchi
1
390
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
280
情シスがMCP環境導入時に打ちのめされる認可の崖
oidfj
0
740
責任あるソフトウェアエンジニアリングの紹介4章・5章 / RSE_Ch4-5
ido_kara_deru
0
360
Featured
See All Featured
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
230
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
800
Measuring & Analyzing Core Web Vitals
bluesmoon
9
830
ラッコキーワード サービス紹介資料
rakko
1
3.4M
Become a Pro
speakerdeck
PRO
31
5.9k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
560
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
360
GitHub's CSS Performance
jonrohan
1033
470k
Designing Powerful Visuals for Engaging Learning
tmiket
1
380
Done Done
chrislema
186
16k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
370
Transcript
Play with animations! Material Design: Animation Meaningful transitions Hierarchical timing
Play with animations! - AnimationUtils.java fun View.animateAppear() { alpha =
0f scaleX = 0f scaleY = 0f val animator = ViewCompat.animate(this).alpha(1f).scaleX(1f).scaleY(1f) animator.start() }
Play with animations! - AnimationUtils.java fun View.animateAppear() { alpha =
0f scaleX = 0f scaleY = 0f val animator = ViewCompat.animate(this).alpha(1f).scaleX(1f).scaleY(1f) animator.start() } fun calcDistance(x1: Int, y1: Int, x2: Int, y2: Int) = Math.sqrt(((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2)).toDouble())
Play with animations! - AnimationUtils.java fun View.animateAppear() { alpha =
0f scaleX = 0f scaleY = 0f val animator = ViewCompat.animate(this).alpha(1f).scaleX(1f).scaleY(1f) animator.start() } fun calcDistance(x1: Int, y1: Int, x2: Int, y2: Int) = Math.sqrt(((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2)).toDouble()) fun List<View>.animateRelativeHierarchicalTiming(centerX: Int = 0, centerY: Int = 0) { forEach { val x = it.left val y = it.top val distance = calcDistance(centerX, centerY, x, y) it.postDelayed({ it.animateAppear() }, distance.toLong()) } }
Play with animations! - AnimationUtils.java fun View.animateAppear() { alpha =
0f scaleX = 0f scaleY = 0f val animator = ViewCompat.animate(this).alpha(1f).scaleX(1f).scaleY(1f) animator.start() } fun calcDistance(x1: Int, y1: Int, x2: Int, y2: Int) = Math.sqrt(((x1-x2)*(x1-x2) + (y1-y2)*(y1-y2)).toDouble()) fun List<View>.animateRelativeHierarchicalTiming(centerX: Int = 0, centerY: Int = 0) { forEach { val x = it.left val y = it.top val distance = calcDistance(centerX, centerY, x, y) it.postDelayed({ it.animateAppear() }, distance.toLong()) } }
Omar Miatello Member of GDG Milano (Italy) Android Developer @
Satispay Personal profile google.com/+OmarMiatello Google+ Community: Kotlin for Android goo.gl/mUKF1w Slides of DevFest 2015 - Milano goo.gl/7Vhy0s