Today, you are going to learn how to use various premade components from the Android framework (and related official libraries), in order to provide an elegant user experience, that allows your users to interact with your application efficiently, intuitively and gracefully. The main focus will be on two essential components - the App Bar and the Navigation Drawer.

The App Bar (also referred to as ActionBar) is a dedicated space at the top of an Activity screen, that can be used for branding, navigation and actions.

A Navigation Drawer is a panel that usually displays navigation options on the left edge of the screen. It is hidden most of the time, but is revealed when the user swipes a finger from the left edge of the screen or touches the navigation icon in the App Bar.

What you'll learn

Create a new project and replace the default ActionBar with a Toolbar.

Create an action button on your ActionBar, which displays a Toast once clicked.

Create an overflow menu in your ActionBar with three items to select between, each navigating to a new Activity. Each Activity must have an ActionBar.

Create an up-action for your ActionBar.

Create a FloatingActionButton, which displays a Toast with a text of your choice.

Replace the toast in the previous exercise with a Snackbar. You should use a CoordinatorLayout as the root element of your layout, in order to make the FloatingActionButton respond to layout changes when the Snackbar is displayed.

Use the element to merge two layouts together.

<include layout="@layout/content_main" />

Create a Navigation Drawer that responds to user input.

Build on the application from the previous exercise. It should have multiple screens, which the user can navigate between using the Navigation Drawer. The screens should be implemented as Fragments - that means only one Activity should be used.

Take on the roll of a UX and UI designer! Find the requirements for your app project and create a wireframe layout for your application. You can use online tools like Figma or Marvelapp, or pen and paper.

Experiment with any UI-component of your choice. Get inspiration from the material design website or the palette in Android Studio.