Efecto Parallax con la barra desplegable no funcionando, imagen en el encabezado aplastado

En el blog Diseño de la Biblioteca de Soporte: Collapsing Toolbar Layout artículo de blog hay una imagen de cabecera con efecto de paralaje agradable:

captura de pantalla de la aplicación

En un simple proyecto de prueba en GitHub estoy tratando de lograr un efecto similar – pero por alguna razón la imagen es squished:

captura de pantalla de la aplicación

En el activity_main.xml he intentado todos los valores posibles para el scaleType pero la imagen permanece distorsionada:

  <ImageView android:id="@+id/header_image_view" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@drawable/header" android:scaleType="centerCrop" app:layout_collapseMode="parallax" /> 

¿Qué me falta aquí por favor?

ACTUALIZAR:

He intentado cambiar a match_parent como Apurva sugiere (gracias +1):

  <ImageView android:id="@+id/header_image_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:background="@drawable/header2" android:scaleType="centerCrop" app:layout_collapseMode="parallax" /> 

Pero esto no ayuda – la imagen del encabezado es squished:

captura de pantalla de la aplicación 1

captura de pantalla de la aplicación 2

2 Solutions collect form web for “Efecto Parallax con la barra desplegable no funcionando, imagen en el encabezado aplastado”

De forma predeterminada, los fondos se estiran para ajustarse. Debería establecer el android:src lugar del android:background en su ImageView .

 <ImageView android:id="@+id/header_image_view" android:layout_width="match_parent" android:layout_height="wrap_content" android:src="@drawable/header2" android:scaleType="centerCrop" app:layout_collapseMode="parallax" /> 

¿Mencionaste que en el tutorial el autor utiliza SquareImageView ?

Él sobreescribió el método onMeasure :

 @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); int width = getMeasuredWidth(); setMeasuredDimension(width, width); } 

Clase se implementa aquí

FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.