SlideShare a Scribd company logo
1 of 81
Material Design
Ricardo Lecheta - http://androidosday.com
Material Design
Ricardo Lecheta - http://androidosday.com
Material Design
Ricardo Lecheta - http://androidosday.com
● Temas
RecyclerView e CardView
Ricardo Lecheta - http://androidosday.com
RecyclerView - animações
Ricardo Lecheta - http://androidosday.com
Google Wear e Cards
Ricardo Lecheta - http://androidosday.com
CardView
Ricardo Lecheta - http://androidosday.com
Material Design - Cores
Ricardo Lecheta - http://androidosday.com
● Cores
Paleta de Cores
Ricardo Lecheta - http://androidosday.com
● http://www.google.com/design/spec/style/color.html
Tema Material
Tema Material
● /res/values/styles.xml
Ricardo Lecheta - http://androidosday.com
Tema Material
● /res/values/colors.xml
Ricardo Lecheta - http://androidosday.com
Tema Material
● Resultado:
Ricardo Lecheta - http://androidosday.com
Material Design
Ricardo Lecheta - http://androidosday.com
● Toolbar
– Conceito genérico da Action Bar
– É uma view como outra qualquer
– Podemos animá-la: mover, redimensionar, etc
Material Design
Ricardo Lecheta - http://androidosday.com
● Floating Toolbar
Material Design
Ricardo Lecheta - http://androidosday.com
● Toolbar
Material Design
Ricardo Lecheta - http://androidosday.com
● Toolbar
Toolbar vs Action Bar
● Como utilizar a Toolbar?
● Remova a Action Bar com o tema NoActionBar
Ricardo Lecheta - http://androidosday.com
Toolbar vs Action Bar
● Arquivo de layout para Toolbar:
– build.gradle: com.android.support:appcompat-v7:22+
Ricardo Lecheta - http://androidosday.com
Toolbar vs Action Bar
● Faz include da Toolbar no Layout (como uma view)
Ricardo Lecheta - http://androidosday.com
Toolbar vs Action Bar
● Na activity: setSupportActionBar(toolbar)
Ricardo Lecheta - http://androidosday.com
Toolbar vs Action Bar
● Resultado:
● Mesmo de antes
Ricardo Lecheta - http://androidosday.com
Toolbar
Navigation Drawer
● Métricas e espaçamentos
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Métricas e espaçamentos
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Usar a Toolbar
● Menu Lateral
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Objetivo:
● System bar translúcida
● Menu deve abrir por cima da action bar
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● /res/values/styles.xml
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● /res/values-v21/styles.xml
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Problema:
● System bar translúcida
● Layout foi desenhado sobre a tela.
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Problema:
– O layout está ocupando a tela inteira, pois a system bar
está translúcida
● Solução:
– Utilize o fitsSystemWindows="true” na raiz do layout
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Resultado com
● fitsSystemWindows="true"
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Problema:
– Voltamos ao ponto de partida.
– Precisamos desenhar o menu sobre todo o layout.
● Solução:
– Utilize o ScrimInsetsFrameLayout
– Ele deve ser o layout pai no Menu Nav Drawer
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● ScrimInsetsFrameLayout
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Resultado com:
– ScrimInsetsFrameLayout
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Tapa final no visual:
● Adicione o header,
● Espaçamentos
● Métricas do Material Design
Ricardo Lecheta - http://androidosday.com
Navigation Drawer
● Demo
Ricardo Lecheta - http://androidosday.com
Elevação
Ricardo Lecheta - http://androidosday.com
Elevação
Ricardo Lecheta - http://androidosday.com
● Elementos não podem ocupar o mesmo lugar
Elevação
Ricardo Lecheta - http://androidosday.com
● Elevação
Touch Feedback
Ricardo Lecheta - http://androidosday.com
● User Input – Surface Reaction
Touch Feedback
Ricardo Lecheta - http://androidosday.com
● Efeito “ripple”
● Já existe nos componentes nativos, ex: Button
● Pode ser adicionado nas views.
– ?android:attr/selectableItemBackground
– ?android:attr/selectableItemBackgroundBorderless
Efeito Ripple
● Cor: colorControlHighlight
Ricardo Lecheta - http://androidosday.com
Touch Feedback
Ricardo Lecheta - http://androidosday.com
● Efeito “ripple” customizado:
– /res/drawable/ripple.xml
Touch Feedback
Ricardo Lecheta - http://androidosday.com
● “ripple”
Floating Action Button
Ricardo Lecheta - http://androidosday.com
● Efeito “ripple” customizado para criar um FAB:
– /res/drawable/fab_oval.xml
Floating Action Button
Ricardo Lecheta - http://androidosday.com
● Efeito “ripple” customizado para criar um FAB:
– /res/drawable/fab_oval.xml
Floating Action Button
Ricardo Lecheta - http://androidosday.com
● Efeito “ripple” customizado para criar um FAB:
– /res/drawable/fab_oval.xml
Animate View State Changes
Ricardo Lecheta - http://androidosday.com
● User Input – Material Response
Animate View State Changes
Ricardo Lecheta - http://androidosday.com
● /res/drawable/raise.xml
Animate View State Changes
Ricardo Lecheta - http://androidosday.com
● /res/layout/adapter_carro.xml
Animate View State Changes
Ricardo Lecheta - http://androidosday.com
● Fonte: app Google I/O 2014
● https://github.com/google/iosched
Material Design
Ricardo Lecheta - http://androidosday.com
● User Input – Radial Reaction
Material Design
Ricardo Lecheta - http://androidosday.com
● Activity Transitions
Material Design
Ricardo Lecheta - http://androidosday.com
● Activity Transitions
Material Design
Ricardo Lecheta - http://androidosday.com
● Activity Transitions
Material Design
Ricardo Lecheta - http://androidosday.com
● Activity Transitions
Material Design
Ricardo Lecheta - http://androidosday.com
● Views compartilhadas: No layout de ambas as activities
Material Design
Ricardo Lecheta - http://androidosday.com
● ViewCompat para manter a compatibilidade.
Activity Transitions
Ricardo Lecheta - http://androidosday.com
Activity Transitions
Ricardo Lecheta - http://androidosday.com
● Ligar pelo código
Activity Transitions
Ricardo Lecheta - http://androidosday.com
● Ou configurando o tema
Turbine a velocidade do Emulador
Ricardo Lecheta - http://androidosday.com
● Dica: Intel® Hardware Accelerated Execution Manager (Intel® HAXM)
Reveal Effect
Ricardo Lecheta - http://androidosday.com
● Animação contínua
● Para mostrar ou esconder uma view
Floating Action Button (FAB)
● Representa a ação primária do aplicativo / tela
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● Nem todas as telas precisam de um FAB
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● O FAB precisa ser uma ação positiva
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● O FAB não “deve” ser uma ação negativa
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● Não encha a tela de fabs
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● Não encha a tela de fabs
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● Animações:
Ricardo Lecheta - http://androidosday.com
● Lib no github:
● https://github.com/makovkastar/FloatingActionButton
Floating Action Button
Ricardo Lecheta - http://androidosday.com
Floating Action Button
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● Monitorar eventos de rolagem:
● Show / Hide com animação
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● Lib no github:
● https://github.com/makovkastar/FloatingActionButton
Ricardo Lecheta - http://androidosday.com
Floating Action Button
● Lib no github:
● https://github.com/futuresimple/android-floating-action-button
Ricardo Lecheta - http://androidosday.com
Toolbar e Scroll
● Lib no github:
● https://github.com/ksoichiro/Android-ObservableScrollView
Ricardo Lecheta - http://androidosday.com
Toolbar e Scroll
● ObservableRecyclerView:
Ricardo Lecheta - http://androidosday.com
Toolbar e Scroll
● ObservableRecyclerView:
Ricardo Lecheta - http://androidosday.com
Toolbar e Scroll
Ricardo Lecheta - http://androidosday.com
Links
Ricardo Lecheta - http://androidosday.com
● Material Design on Android Checklist
● http://android-developers.blogspot.com.br/2014/10/material-design-on-android-
checklist.html
Obrigado 
Ricardo Lecheta - http://androidosday.com
• https://plus.google.com/+RicardoLecheta
• https://www.facebook.com/ricardolecheta
• http://twitter.com/rlecheta

More Related Content

Viewers also liked

Android animation
Android animationAndroid animation
Android animation
Krazy Koder
 
Google material-design
Google material-designGoogle material-design
Google material-design
Harrison Weber
 
Google Material design
Google Material designGoogle Material design
Google Material design
Dan Vitoriano
 

Viewers also liked (14)

Android animation
Android animationAndroid animation
Android animation
 
Android Material Design APIs/Tips
Android Material Design APIs/TipsAndroid Material Design APIs/Tips
Android Material Design APIs/Tips
 
School Management System in Android
School Management System in AndroidSchool Management System in Android
School Management System in Android
 
Android animation theory
Android animation theoryAndroid animation theory
Android animation theory
 
Introduction to Android Animations
Introduction to Android AnimationsIntroduction to Android Animations
Introduction to Android Animations
 
Material design
Material designMaterial design
Material design
 
Android Transition
Android TransitionAndroid Transition
Android Transition
 
Android Training (Animation)
Android Training (Animation)Android Training (Animation)
Android Training (Animation)
 
Material Design
Material Design Material Design
Material Design
 
Material Design: Google's New Design Language
Material Design: Google's New Design LanguageMaterial Design: Google's New Design Language
Material Design: Google's New Design Language
 
Material design
Material designMaterial design
Material design
 
Google material-design
Google material-designGoogle material-design
Google material-design
 
Google Material design
Google Material designGoogle Material design
Google Material design
 
Présentation du Material Design
Présentation du Material DesignPrésentation du Material Design
Présentation du Material Design
 

Similar to Material design - AndroidosDay 2015

Openshift: Deployments for the rest of us
Openshift: Deployments for the rest of usOpenshift: Deployments for the rest of us
Openshift: Deployments for the rest of us
Anurag Patel
 
Mobile Software Engineering Crash Course - C03 Android
Mobile Software Engineering Crash Course - C03 AndroidMobile Software Engineering Crash Course - C03 Android
Mobile Software Engineering Crash Course - C03 Android
Mohammad Shaker
 

Similar to Material design - AndroidosDay 2015 (20)

Openshift: Deployments for the rest of us
Openshift: Deployments for the rest of usOpenshift: Deployments for the rest of us
Openshift: Deployments for the rest of us
 
Introduzione a React Native - Facebook Developer Circle Rome
Introduzione a React Native - Facebook Developer Circle RomeIntroduzione a React Native - Facebook Developer Circle Rome
Introduzione a React Native - Facebook Developer Circle Rome
 
(some) Drupal Theming by Ryan Price
(some) Drupal Theming by Ryan Price(some) Drupal Theming by Ryan Price
(some) Drupal Theming by Ryan Price
 
Matteo Manchi - React Native for multi-platform mobile applications - Codemot...
Matteo Manchi - React Native for multi-platform mobile applications - Codemot...Matteo Manchi - React Native for multi-platform mobile applications - Codemot...
Matteo Manchi - React Native for multi-platform mobile applications - Codemot...
 
Webinar - Matteo Manchi: Dal web al nativo: Introduzione a React Native
Webinar - Matteo Manchi: Dal web al nativo: Introduzione a React Native Webinar - Matteo Manchi: Dal web al nativo: Introduzione a React Native
Webinar - Matteo Manchi: Dal web al nativo: Introduzione a React Native
 
Betabeers VII- Android Dev@GDGMallorca
Betabeers VII-  Android Dev@GDGMallorcaBetabeers VII-  Android Dev@GDGMallorca
Betabeers VII- Android Dev@GDGMallorca
 
OutSystems Webinar - Troubleshooting Mobile Apps Performance
OutSystems Webinar - Troubleshooting Mobile Apps PerformanceOutSystems Webinar - Troubleshooting Mobile Apps Performance
OutSystems Webinar - Troubleshooting Mobile Apps Performance
 
Training Webinar: Troubleshooting Mobile Apps Performance
Training Webinar: Troubleshooting Mobile Apps Performance Training Webinar: Troubleshooting Mobile Apps Performance
Training Webinar: Troubleshooting Mobile Apps Performance
 
#AndroidEverywhere
#AndroidEverywhere#AndroidEverywhere
#AndroidEverywhere
 
Hong kong drupal user group dec13th responsive web design for dummy
Hong kong drupal user group dec13th responsive web design for dummyHong kong drupal user group dec13th responsive web design for dummy
Hong kong drupal user group dec13th responsive web design for dummy
 
Shining a light on performance (js meetup)
Shining a light on performance (js meetup)Shining a light on performance (js meetup)
Shining a light on performance (js meetup)
 
Multisite for multilingual
Multisite for multilingualMultisite for multilingual
Multisite for multilingual
 
How To Win a Hackaton - My thoughts on the WebGeek Devcup
How To Win a Hackaton - My thoughts on the WebGeek DevcupHow To Win a Hackaton - My thoughts on the WebGeek Devcup
How To Win a Hackaton - My thoughts on the WebGeek Devcup
 
Mobile Software Engineering Crash Course - C03 Android
Mobile Software Engineering Crash Course - C03 AndroidMobile Software Engineering Crash Course - C03 Android
Mobile Software Engineering Crash Course - C03 Android
 
Getting Started With Material Design
Getting Started With Material DesignGetting Started With Material Design
Getting Started With Material Design
 
Hands on react native
Hands on react nativeHands on react native
Hands on react native
 
Interactive Image Processing Demos for the Web
Interactive Image Processing Demos for the WebInteractive Image Processing Demos for the Web
Interactive Image Processing Demos for the Web
 
Plugins on word press
Plugins on word pressPlugins on word press
Plugins on word press
 
Introduction to React Native Workshop
Introduction to React Native WorkshopIntroduction to React Native Workshop
Introduction to React Native Workshop
 
Responsive web design
Responsive web designResponsive web design
Responsive web design
 

Recently uploaded

CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 

Recently uploaded (20)

Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learnVTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) SolutionIntroducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 

Material design - AndroidosDay 2015