Cómo hacer la animación de la barra de herramientas como la aplicación Contactos en Lollipop

Estoy trabajando en esta aplicación y me gustaría implementar la animación de colapso similar a la aplicación de contactos, no he sido capaz de encontrar un tutorial que funciona con la barra de herramientas en la biblioteca de soporte.

Aquí hay un video que muestra la animación: http://material-design.storage.googleapis.com/publish/v_2/material_ext_publish/0B0NGgBg38lWWZ1F2b1pUOGFiZHc/patterns-scrollingtech-scrolling-070801_Flexible_Space_with_Image_xhdpi_002.webm

El código siguiente implementa la barra de herramientas Expandir / Contraer.

Básicamente tendremos un
CoordinatorLayout (FrameLayout)
AppBarLayout ( AppBarLayout vertical que implementa muchas de las características de diseños de cosas),
CollapsingToolbarLayout (es un contenedor para la barra de herramientas)
ImageView y barra de herramientas

 <android.support.design.widget.AppBarLayout android:id="@+id/appbar" android:layout_width="match_parent" android:layout_height="wrap_content" android:fitsSystemWindows="true" android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"> <android.support.design.widget.CollapsingToolbarLayout android:id="@+id/collapsing_toolbar" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" app:contentScrim="?attr/colorPrimary" app:expandedTitleMarginEnd="64dp" app:expandedTitleMarginStart="48dp" app:layout_scrollFlags="scroll|exitUntilCollapsed"> <ImageView android:id="@+id/header" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/logo" android:minHeight="300dp" android:scaleType="centerCrop" app:layout_collapseMode="parallax" /> <android.support.v7.widget.Toolbar xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/toolbar" android:layout_width="match_parent" android:layout_height="?attr/actionBarSize" android:minHeight="?attr/actionBarSize" app:layout_collapseMode="pin" /> </android.support.design.widget.CollapsingToolbarLayout> </android.support.design.widget.AppBarLayout> <FrameLayout android:id="@+id/fr_container_home" android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior"/> </android.support.design.widget.CoordinatorLayout> Observation - FrameLayout is necessary app: layout_behavior = "@string/appbar_scrolling_view_behavior" -TOOLBAR Not need backgroud, insert the color in the attribute app:contentScrim = "?Attr/ColorPrimary" from our CollapsingToolbarLayout 

En tu clase

 Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); mCollapsingToolbarLayout = (CollapsingToolbarLayout)findViewById(R.id.collapsing_toolbar); mCollapsingToolbarLayout.setTitle("YourTitle"); setSupportActionBar(toolbar); 

Sé que la pregunta es vieja, pero en caso de que alguien todavía la necesita, recientemente Google ha publicado una nueva biblioteca de diseño de materiales que tiene este componente. Se llama CoordinatorLayout. A continuación se muestra una implementación de muestra:

  <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent"> <! -- Your Scrollable View --> <android.support.v7.widget.RecyclerView android:layout_width="match_parent" android:layout_height="match_parent" app:layout_behavior="@string/appbar_scrolling_view_behavior" /> <android.support.design.widget.AppBarLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.Toolbar ... app:layout_scrollFlags="scroll|enterAlways"> <android.support.design.widget.TabLayout ... app:layout_scrollFlags="scroll|enterAlways"> </android.support.design.widget.AppBarLayout> </android.support.design.widget.CoordinatorLayout> 

Puede encontrar más información aquí: http://android-developers.blogspot.ch/2015/05/android-design-support-library.html

  • Obtener el icono de navegación de la barra de herramientas
  • ¿Cómo agregar correctamente una vista personalizada a la barra de herramientas?
  • Hacer transparente la barra de herramientas
  • Barra de aplicación de relleno / espacio entre icono y título (Android 24)
  • ¿Barra de herramientas Android para API 19? (Para la API 21 funciona bien)
  • Android: Caja blanca no deseada en la parte superior de la pantalla (barra de herramientas?)
  • ¿Cómo cambiar el tamaño del texto de la barra de herramientas?
  • Barra de herramientas Android desaparece durante el desplazamiento con Coordinatorlayout
  • Agregar EditText a la barra de herramientas
  • Cómo restaurar Colapsing Toolbar Layout Estado tras cambio de orientación de pantalla
  • Error al usar ScrimInsetFrameLayout
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.