Android material design navigation drawer

Avoid using a navigation drawer with other primary navigation components, such as a bottom navigation bar. The placement and list-style content of navigation drawers clearly identify them as navigation. Navigation drawers order destinations according to user importance, with frequent destinations first Navigation drawers order destinations according to user importance, with frequent destinations first and related ones grouped together.

Standard navigation drawers allow users to simultaneously access drawer destinations and app content. Standard drawers can be permanently visible or opened and closed by tapping a navigation menu icon. They can be used on tablet and desktop only. On mobile, modal drawers are used instead. They are primarily for use on mobile, where screen space is limited.

Add dependencies

They can be replaced by standard drawers on tablet and desktop. Navigation drawers contain a list embedded within a sheet. They can be enhanced with headers and dividers to organize longer lists. The contents of a navigation drawer are contained within a side or bottom sheet. Navigation drawers that open from the side are placed on the Navigation drawers that open from the side are placed on the left of the screen for left-to-right languages, and on the right of the screen for right-to-left languages.

A navigation drawer sheet can open from the left side of the screen for left-to-right languages 1 , or from the bottom of the screen when paired with a bottom app bar 2. Scaled down to Destinations in a navigation drawer take the form of actionable list items. Each item describes its destination using a text label and optional iconography. Icons can supplement labels as indicators of a destination. Whe used, they should always be placed before text. Other app components and content should reference these icons.

Secondary destinations can be represented by the same icon, especially if they are part of a collection 1. Icons should be used for all destinations, or none. Horizontal dividers can be used to separate groups of navigation destinations within the list. They extend across the full width of the drawer. A divider The header area of a navigation drawer is a flexible space that can be used for brand expression such as an app title or logo , The header area of a navigation drawer is a flexible space that can be used for brand expression such as an app title or logo , an account switcher, and more.

If access to account switching is a priority, an account switcher can be placed in the header area of a navigation drawer. If a navigation drawer is the full vertical height of the page, you can place a branding element or product name in the header area. In this case the top app bar is a more suitable place for that content. Modal navigation drawers use a scrim to block interaction with the rest of the app. Standard navigation drawers allow interaction with both screen content and the drawer at the same time. They can be used on tablet and desktop, but If the list of navigation destinations is longer than The visibility of a standard navigation drawer depends on screen size, app layout, and frequency of use.

A standard dismissible navigation drawer is opened and closed by tapping the navigation menu icon in the top app bar 1 , and remains open until the menu icon is tapped again 2. A standard navigation drawer can use one of these elevation positions: This is a big issue for a lot of devs so i've created a helper which "fixes" this issue. A additional workaround is to disable the translucent StatusBar This will break the drawer to be displayed under the StatusBar.

Design & API Documentation

You can read about this here: As the MaterialDrawer will just create a normal DrawerLayout with some magic around it everything a normal DrawerLayout can do is also available in the MaterialDrawer. MaterialDrawer allows you to use a compatible implementation of MaterialDrawer. Please note that the provided layout must follow the same structure as the MaterialDrawer internal one.

DrawerLayout with the fully qualified name of your class com. CustomDrawerLayout for example. Please note that your class must extend the original DrawerLayout. Lunae Luman - Behance for the Header Image. Skip to content. Dismiss Join GitHub today GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.

Sign up. The flexible, easy to use, all in one drawer library for your Android project. Now brand new with material 2 design. Find file.

Create a navigation drawer

Download ZIP. Launching GitHub Desktop Go back. Launching Xcode Launching Visual Studio Latest commit f4fb Dec 15, MaterialDrawer Does your application contain a Drawer? A quick overview of what's in it the easiest possible integration integrate in less than 5 minutes depends on androidX compatible down to API Level 14 includes an AccountSwitcher quick and simple api follows the NEW Google Material Design Guidelines use vector.

Setup 1. Provide the gradle dependency implementation " com. Result new DrawerBuilder.

Navigation Drawer Animation in Android Studio Tutorial

The way I found to disable it is to override the onDrawerSlide method. Just take a look at the projects linked down below. The profile picture is rounded. There are different ways to get a rounded image, but I always remember this publication by Romain Guy talking about how to do it.

I haven't checked the one used on the Google IO app but might be worth taking a look at it. Check out the profile picture size.

Material Design Navigation Drawer II: Styling – AndroidPub

You don't want to make the photo invisible neither make the text unreadable. What I've done is to use a foreground in a FrameLayout. I don't know if this is the best approach, hope to receive some feedback on it. Make sure you use a centerCrop scaleType to make it look nice. If you take a look at the photo above the Drawer is visible and below the status bar.


  • Material Design.
  • samsung galaxy pocket problem touch screen?
  • Material Design Navigation Drawer II: Styling.
  • Principles.
  • download silverlight for ipad mini.
  • .

Google apps are still on the migrating to this pattern in the moment I'm writing this. Gmail, Inbox, Keep, Play Store and Hangouts already have this layout while others are in the process. This is only happening at the moment on apps running Lollipop and above. Even if the current Google IO application in the Play Store has the Navigation Drawer completely wrong, they have the code better and ready for a next release has been like there for a while… probably they are updating before the Google IO conference this year in a couple of months from now. The magic bit is in the Google ScrimInsets layout.

You can try to do it yourself. I felt that Google guys would do it better than me. I have some doubts whether the ScrimInsets layout should be applied in versions below Lollipop or not. I know is possible to get it working on Kit Kat but Google is not doing it. Check out the cover photo size. When it comes to styling the main rows in the drawer we have to deal with 3 elements background, icon and text and 3 different states default, selected and pressed for each element on each row. Not everything is written down on the specs , but we must read the specs, take a look at Google apps and other good looking apps and try to figure out how to make it good looking in a Material Design way.

In the next pictures, the first row is the default state, the second row is the selected state, and the third one is the pressed state. All pictures above looks similar but all of them are different. I really would like to know how other people are doing this things, this is how I did it.

Add a drawer to your layout

First of all I'm using two drawables for the backgrounds. The reason is ripples are not a thing below 5.


  1. Understanding navigation.
  2. Navigation drawer - Material Design?
  3. new youtube app iphone problems.
  4. Navigation Views - Material Components for Android!
  5. Create a navigation drawer | Android Developers.
  6. application diablo 3 hotel des ventes.
  7. .
  8. Then I apply a tint with the desired color and there you have your colored icon.