Skip to content

Displaying the Snackbar

Nathan Esquenazi edited this page Aug 13, 2015 · 23 revisions

Overview

Snackbars are shown on the bottom of the screen and contain text with an optional single action. They automatically fade out after enough time similar to a toast. Snackbars can be swiped away by the user or contain other actions making them more powerful than simple toasts. However, the API is very familiar.

Note the snackbar at the bottom with embedded action. See this design guide or more details.

Simple Snackbar

Make sure to follow the Design Support Library setup instructions first.

Create a snackbar using make, setting an optional action and then call .show():

Snackbar.make(parentLayout, R.string.snackbar_text, Snackbar.LENGTH_LONG)
  .setAction(R.string.snackbar_action, myOnClickListener)
  .show(); // Don’t forget to show!

Note the use of a View as the first parameter to make() which the snackbar uses as the parent layout used for positioning. Snackbar will try to walk up the view hierarchy searching for either a CoordinatorLayout or the top-most container layout, whichever comes first. Adding a CoordinatorLayout in the view hierarchy is helpful in cases where the floating action buttons needs to moved to make room for displaying the Snackbar as discussed in this guide.

In a recent update of the support library, you can now specify LENGTH_INDEFINITE that will continue to show the Snackbar until it is dismissed or another one is shown:

Snackbar.make(parentLayout, R.string.snackbar_text, Snackbar.LENGTH_INDEFINITE).show();

Configuration Options

Additional options can be used to configure the snackbar such a setActionTextColor and setDuration:

Snackbar.make(parentLayout, R.string.snackbar_text, Snackbar.LENGTH_LONG)
 .setAction(R.string.snackbar_action, myOnClickListener)
 .setActionTextColor(R.color.green)
 .setDuration(3000).show();

That's all!

References

Finding these guides helpful?

We need help from the broader community to improve these guides, add new topics and keep the topics up-to-date. See our contribution guidelines here and our topic issues list for great ways to help out.

Check these same guides through our standalone viewer for a better browsing experience and an improved search. Follow us on twitter @codepath for access to more useful Android development resources.

Clone this wiki locally