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)

Activities and layouts

Android applications are are made up of one or more screens called activities. So as to keep design and function separate, the appearance of an activity is defined in XML, and its behavior with Java. Creating an Android Studio project using the Blank Activity template is a good way to see how this works.

XML activities contain two types of screen components. There are all the visible screen objects, called widgets, that we associate with mobile apps, such as buttons, sliders, and images, and there are invisible container objects known as layouts or ViewGroups. If you open the activity_main.xml XML file that was created by the project template, in design mode, you will see that there are seven layouts available to us at the top of the palette.


On the right-hand side of the editor is the component tree; this displays a hierarchical view of the activity, and we can see that the root layout here is a RelativeLayout, and that it contains a single widget, TextView...