2011-08-04 26 views
6

Estoy tratando de agregar un Button en un LinearLayout después de un TextView pero no aparece.Botón que no se muestra en LinearLayout

Aquí está mi código de diseño

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:id="@+id/LinearLayout01" 
    android:layout_width="fill_parent" 
    android:layout_height="45dip"> 

    <TextView android:layout_width="fill_parent" 
     android:layout_height="45dip" 
     android:paddingLeft="5dip" 
     android:paddingRight="5dip" 
     android:textStyle="bold" 
     android:textSize="17dip" 
     android:gravity="center_vertical" 
     android:id="@+id/tvChild" 
     android:text="Children" 
     android:textColor="#ffCCCC22" /> 

    <Button android:id="@+id/submit" 
     android:layout_width="fill_parent" 
     android:layout_height="wrap_content" 
     android:layout_alignParentBottom="true" 
     android:text="Submit" /> 
</LinearLayout> 

El TextView se visualiza correctamente con el texto propiamente dicho, pero en lugar de un Button Me estoy haciendo un espacio en blanco grande de tres a cuatro líneas de longitud.

¿Qué me estoy perdiendo?

+3

Cambio androide: layout_width = "fill_parent" de Vista de Texto a Android: layout_width = "wrap_content" O En su etiqueta LinearLayout añadir androide: orientation = "vertical" –

+0

Gracias Kartik .. Funcionó – Codemator

Respuesta

6

Pruebe esto.

<?xml version="1.0" encoding="utf-8"?> 
    <LinearLayout android:id="@+id/LinearLayout01" 
     android:layout_width="fill_parent" android:layout_height="45dip" 
     xmlns:android="http://schemas.android.com/apk/res/android"> 
     <TextView android:layout_width="wrap_content" 
      android:layout_height="45dip" android:paddingLeft="5dip" 
      android:paddingRight="5dip" android:textStyle="bold" android:textSize="17dip" 
      android:gravity="center_vertical" android:id="@+id/tvChild" 
      android:text="Children" android:textColor="#ffCCCC22" 
      /> 
      <Button android:id="@+id/submit" 
       android:layout_width="wrap_content" 
       android:layout_height="wrap_content" 
       android:layout_alignParentBottom="true" 
       android:text="Submit" /> 
    </LinearLayout> 

Uso android:layout_width="wrap_content" en lugar de android:layout_width="fill_parent" para TextView y Button

+0

Perfecto ... Me ayudó mucho ... – Codemator

+0

Incluso si OP es nuevo, usted debe * no * pedir un voto favorable * y * aceptación de la respuesta. – Reno

+1

Lee lo que escribí: incluso si es nuevo, no deberías hacerlo. Puedes decirle * cómo aceptar una respuesta *. No obligue al usuario a aceptar * su * respuesta o incluso a votarla. Su respuesta * no explica * por qué su solución funciona. [Lea esto] (http://meta.stackexchange.com/questions/95470/down-vote-code-only-answers) – Reno

4

El problema fue que estaba configurando android:layout_width="fill_parent" para el TextView, por lo que tomó ancho de pantalla completa solo para mostrar el TextView. Y no pudo mostrar el Button.

Aquí hay dos opciones para usted:

  1. Adición TextViewButton y en una sola fila.

    Cambie el atributo layout_width del TextView al wrap_content.

  2. Agregando TextView y Button verticalmente.

    Cambiar el atributo de orientación de LinearLayout a vertical.

+0

Exactamente ... Lo tengo ... Gracias por su valioso tiempo – Codemator

Cuestiones relacionadas