Book Image

Learning Material Design

By : Kyle Mew, Nadir Belhaj
Book Image

Learning Material Design

By: Kyle Mew, Nadir Belhaj

Overview of this book

Google's Material Design language has taken the web development and design worlds by storm. Now available on many more platforms than Android, Material Design uses color, light, and movements to not only generate beautiful interfaces, but to provide intuitive navigation for the user. Learning Material Design will teach you the fundamental theories of Material Design using code samples to put these theories into practice. Focusing primarily on Android Studio, you’ll create mobile interfaces using the most widely used and powerful material components, such as sliding drawers and floating action buttons. Each section will introduce the relevant Java classes and APIs required to implement these components. With the rules regarding structure, layout, iconography, and typography covered, we then move into animation and transition, possibly Material Design's most powerful concept, allowing complex hierarchies to be displayed simply and stylishly. With all the basic technologies and concepts mastered, the book concludes by showing you how these skills can be applied to other platforms, in particular web apps, using the powerful Polymer library.
Table of Contents (17 chapters)


Components lie at the heart of Material Design, and despite the framework's claim to provide only a limited set of components, MDL actually provides a comprehensive number of them. They have also been designed to meet all the material criteria we encountered earlier in the book, and in terms of appearance alone, MDL is probably the most attractive. The framework also provides some very elegant features such as transparent headers that are not available or easy to implement in other frameworks.


Most web designs begin with the overall layout, and in Material Design, this nearly always involves a navigation bar. If we are creating a site that utilizes a lot of vivid imagery, very pleasing results can be achieved with a transparent navigation bar. Firstly, it may be worth recapping how we link our index.html code with the framework, both of which will occupy the same directory:

<!DOCTYPE html>
<script src="