2011-10-26 10 views
7

Tengo esta vista de texto "A", un texto de edición para ingresar el contacto y un botón de búsqueda para buscar contactos, todo en una línea. La vista de texto y el botón están en buen lugar pero el problema es que el texto de edición es pequeño, quiero que ocupe todos los espacios restantes. Aquí está el código:EditarTexto no ocupará el espacio restante

<RelativeLayout 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent" 
     android:paddingTop="10dp"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="To: " 
      android:textColor="#000000" 
      android:paddingTop="10dp" 
      android:layout_toLeftOf="@+id/editText_recipient" 
      android:layout_alignParentLeft="true" 
      android:layout_marginLeft="10dp"/> 
     <EditText 
      android:id="@+id/editText_recipient" 
      android:layout_height="wrap_content" 
      android:layout_width="wrap_content" 
      android:hint="Enter Number" 
      android:inputType="number" 
      android:textSize="12sp" 
      android:layout_toLeftOf="@+id/button_recipient_picker" 
      android:layout_marginLeft="5dp"/> 
     <Button 
      android:id="@+id/button_recipient_picker" 
      android:layout_height="wrap_content" 
      android:layout_width="wrap_content" 
      android:text="Browse .." 
      android:layout_alignParentRight="true" 
      android:layout_marginLeft="5dp" 
      android:layout_marginRight="5dp" 
      android:onClick="doLaunchContactPicker"/> 
     </RelativeLayout> 
+0

Responda con un RelativeLayout debajo de – Br0thazS0ul

Respuesta

17
<LinearLayout 
     android:layout_height="wrap_content" 
     android:layout_width="fill_parent" 
     android:paddingTop="10dp"> 
     <TextView 
      android:layout_width="wrap_content" 
      android:layout_height="wrap_content" 
      android:text="To: " 
      android:textColor="#000000" 
      android:paddingTop="10dp" 
      android:layout_marginLeft="10dp"/> 
     <EditText 
      android:id="@+id/editText_recipient" 
      android:layout_height="wrap_content" 
      android:layout_width="wrap_content" 
      android:hint="Enter Number" 
      android:inputType="number" 
      android:textSize="12sp" 
      android:layout_marginLeft="5dp" 
      android:layout_weight="1" 
     /> 
     <Button 
      android:id="@+id/button_recipient_picker" 
      android:layout_height="wrap_content" 
      android:layout_width="wrap_content" 
      android:text="Browse .." 
      android:layout_marginLeft="5dp" 
      android:layout_marginRight="5dp" 
      android:onClick="doLaunchContactPicker"/> 
     </LinearLayout> 

uso de este diseño, que convierte a su diseño lineal (por defecto horizontal). y agregó un layout_weight a editText, ocupará el espacio restante.

+0

Gracias: D Funciona muy bien :) – kev

2

Para aquellos que necesitan una respuesta a esto y para resolver esta publicación sin dar una alternativa, la respuesta es bastante simple. Es necesario decir a cada control de dónde colocar de acuerdo entre sí y aplicar al control que debe tener espacio disponible android:layout_width = "match_parent" a pesar de que en un LinearLayout, esto empujaría a todos los demás de control alineado fuera de la pantalla, en un RelativeLayout funciona perfectamente

<RelativeLayout 
    android:layout_height="wrap_content" 
    android:layout_width="match_parent" 
    android:paddingTop="10dp"> 
    <TextView 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="To: " 
     android:textColor="#000000" 
     android:paddingTop="10dp" 
     android:layout_toLeftOf="@+id/editText_recipient" 
     android:layout_alignParentLeft="true" 
     android:layout_marginLeft="10dp"/> 
    <EditText 
     android:id="@+id/editText_recipient" 
     android:layout_height="wrap_content" 
     android:layout_width="MATCH_PARENT" 
     android:hint="Enter number" 
     android:inputType="number" 
     android:textSize="12sp" 
     android:layout_toLeftOf="@+id/button_recipient_picker" 
     android:layout_marginLeft="5dp"/> 
    <Button 
     android:id="@+id/button_recipient_picker" 
     android:layout_height="wrap_content" 
     android:layout_width="wrap_content" 
     android:text="Browse .." 
     android:layout_alignParentRight="true" 
     android:layout_marginLeft="5dp" 
     android:layout_marginRight="5dp" 
     android:onClick="doLaunchContactPicker"/> 
    </RelativeLayout> 
Cuestiones relacionadas