La pregunta es vieja y la respuesta tiene una gran debilidad: no tenemos posibilidad de cambiar el tamaño de la imagen, significa que depende totalmente de dibujable que tenemos.
Durante el uso de diseño más reciente de Android bibliotecas la raíz de vista actividad será CoordinatorLayout
o DrawerLayout
y esos diseños no tiene vistas por defecto que muestra la jerarquía, que significa que el primer punto de vista del niño se vea opacada por ninguna siguiente, y en segundo lugar por tercera y. .. para durar una. Entonces para tener el fondo centrado Necesitamos agregar como primer niño LinearLayout
con la imagen centrada dentro de él. Algunos fragmento de código:
<android.support.v4.widget.DrawerLayout>
<!-- first child -->
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
>
<ImageView
android:layout_width="match_parent"
android:layout_height="60dp"
android:src="@drawable/some_background"
/>
</LinearLayout>
... next view will be above
Nos puede personalizar por completo el tamaño de la imagen que se centra por gravedad opción LinearLayout
. También es importante tener match_parent en ancho y alto de LinearLayout
, gracias a que el centro también será el centro de la vista principal.
Lo mismo se puede hacer en RelativeLayout
o en cualquier otro diseño que permita la superposición de vistas secundarias.