This is part of the Android User Interfaces learning path. View Path.
Who is this for?
Those who are new to Android development and looking to build an app from scratch. This courses teaches how to compose interfaces from basic layout types such as FrameLayout, RelativeLayout and LinearLayout.
Once you've learned the basic layout types, you'll take your skills to the next level by learning ConstraintLayout, and ultimately build a complex layout using what is known as flat layout.
Before taking this course, we recommend having worked through the Android and Kotlin for Beginners learning path first.
- Flat Layout
- XML Editing
- Dimen values
- Android measurement units
Part 1: Introduction to Android Layouts
Welcome to the Beginning Android Layouts course! Find out what the course covers and how to get started.
Download the starter app and build it in Android Studio, and take a peek at the included starter layout files.
Learn about the foundation of all Android layouts, the ViewGroup class, and explore the layout editors in Android Studio.
The View Hierarchy
Discover the concept of the view hierarchy and begin your study of layouts by seeing how to define view widths and heights.
Learn how to specify size units in Android, and use those size units to space views via margins and padding.
Practice adding padding to a view, through a hands-on challenge.
Let's review what you've covered in this first section, and discuss what's next.
Part 2: Basic Layout Types
Learn about the basic layout types that you'll discover in this section.
Learn about how to use the RelativeLayout ViewGroup to position sibling views with specific relationships to one another.
Gravity and Cleanup
Learn how to align elements using the layout_gravity and gravity tags, and do some code and design cleanup.
Practice creating a RelativeLayout through a hands-on challenge.
Use the LinearLayout ViewGroup to position views along a horizontal or vertical dimension.
Discover how to use layout_weight with LinearLayout, in order to divide the shared size between sibling views in a specific ratio.
Practice creating a LinearLayout through a hands-on challenge.
Learn to use the FrameLayout ViewGroup to create a layering of views, and how to switch between the layers.
Practice creating an empty state using FrameLayout through a hands-on challenge.
Review what you've learned about the basic layout types, and find out what's next.
Part 3: ConstraintLayout
In this section, you'll learn about ConstraintLayout and constraints. Let's dive in!
Use the converter built into Android Studio to convert an existing layout to ConstraintLayout.
Create a new ConstraintLayout from scratch, utilizing the layout editor editing controls.
Practice converting an existing layout to ConstraintLayout through a hands-on challenge.
Practice programmatically hiding empty views in a ConstraintLayout through a hands-on challenge.
Learn about some of the upcoming features in the upcoming version of ConstraintLayout.
Great job on this section! Review what you've learned, and what's up next.
Part 4: Configuration Changes
It's important to handle both portrait mode and landscape mode device configurations. Learn why here!
Learn how resource qualifiers are used to handle different device densities and also for localization.
See how to create a layout file tailored specifically for when the device is in the landscape orientation.
Practice creating a landscape mode layout through a hands-on challenge.
The Great Flattening
Remove all of the nested layouts in an existing layout to create a completely flat ConstraintLayout.
Congrats on making it through the course! Review what you've learned, get an overview of Android layout topics that weren't covered, and see where to go from here.