Incluyendo un Foobars dibujable de fondo mi diseño en Android. Ideas ¿Por qué?
-
18-09-2019 - |
Pregunta
Si no incluyo un fondo en mi diseño de raíz, todo lo que me hace como espero:
texto alt http://dl.dropbox.com/u/299320/correct.png
Sin embargo, si agrego solo una línea que agrega un fondo, el diseño se vuelve completamente loco:
texto alt http://dl.dropbox.com/u/299320/foobared.png
La parte relevante del diseño XML es:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width ="fill_parent"
android:layout_height="fill_parent"
android:paddingRight ="20dip"
android:paddingLeft ="20dip"
android:gravity ="center_vertical"
android:background ="@drawable/main_background">
Literalmente, la única diferencia entre las dos capturas de pantalla anteriores es la inclusión de android:background="@drawable/main_background"
. Te daré una galleta si puedes ayudarme aquí :)
Solución
En cuanto a por qué está experimentando lo que es con el fondo, puede ser que su imagen de fondo de alguna manera quede atrapada en la gravedad, pero eso es solo una suposición.
Como solución alternativa, envuelva todo en un FrameLayout
. Haz el primer hijo del FrameLayout
frijol ImageView
con tus antecedentes. Haz el segundo hijo del FrameLayout
Sea su existente LinearLayout
(Sans android:background
) atributo. Ya que FrameLayout
y RelativeLayout
Permita el apilamiento, esto hará que su LinearLayout aparezca por encima de la imagen y debería darle el efecto visual que busca.