Pergunta

Se eu não incluir um plano de fundo no layout da minha raiz, tudo se renderiza como espero:

TEXTO DE ALT HTTP://dl.dropbox.com/u/299320/Correct.png

No entanto, se eu adicionar apenas uma linha adicionando um plano de fundo, o layout ficará completamente errado:

TEXTO DE ALT HTTP://dl.dropbox.com/u/299320/foobared.png

O bit relevante do layout XML é:

<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, a única diferença entre as duas capturas de tela acima é a inclusão de android:background="@drawable/main_background". Vou te dar um biscoito se você puder me ajudar aqui :)

Foi útil?

Solução

Quanto ao motivo pelo qual você está experimentando o que é com o fundo, pode ser que sua imagem de fundo de alguma forma seja pega na gravidade, mas isso é apenas um palpite.

Como solução alternativa, envolva toda a sua coisa em um FrameLayout. Faça o primeiro filho do FrameLayout feijão ImageView com seu fundo. Fazer o segundo filho do FrameLayout seja seu existente LinearLayout (Sans android:background) atributo. Desde FrameLayout e RelativeLayout Permita o empilhamento, isso fará com que seu linearlayout apareça acima da imagem e deve lhe dar o efeito visual que você procura.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top