How do I declare an extended height Toolbar/Action Bar on Android Lollipop?

Chris Banes picture Chris Banes · Oct 21, 2014 · Viewed 50.3k times · Source

I've seen extended height app bar's in the Google Design App Bar guidelines. How do I implement these in Android Lollipop?

Answer

Chris Banes picture Chris Banes · Oct 21, 2014

You need to use the new Toolbar widget to achieve this. Toolbar has special handling for it's minimum height to declare the amount of space which is used for buttons (and actions).

In the example below, we're setting the height to be 128dp (which is 56dp + 72dp as defined in the spec), but keeping the android:minHeight as the standard actionBarSize (which is usually 56dp). This means that the buttons and actions are constrained to be positioned vertically in the top 56dp. We can then use android:gravity to position the title at the bottom.

<Toolbar
    android:id="@+id/toolbar"
    android:layout_height="128dp"
    android:layout_width="match_parent"
    android:minHeight="?android:attr/actionBarSize"
    android:background="?android:attr/colorPrimary"
    android:gravity="bottom" />

If you're using AppCompat, then change the declaration to use android.support.v7.widget.Toolbar instead and use it's attributes.