2010-01-19 11 views
6

Tengo el siguienteAndroid TableRow RelativeLayout Edición

<TableRow xmlns:android="http://schemas.android.com/apk/res/android" 
      android:id="@+id/admin_row" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:gravity="center_horizontal"> 
    <RelativeLayout android:layout_width="fill_parent" 
        android:layout_height="fill_parent" 
        android:orientation="horizontal" 
        android:background="@color/silver"> 

I dinámicamente pueblan la mesa, pero con la plata disposición relativa de color sólo se extiende por cerca de 3/4 de la fila de la tabla. Si coloco un LinearLayout con orientación horizontal, se expande por completo, pero si lo cambio a vertical, se produce el mismo problema. Necesito un diseño relativo en la fila de la tabla porque necesito algo como esto:

Valor
Detalle MoreDetail.

¿Alguna idea sobre cómo conseguir que el diseño relativo abarque la fila de la tabla?

Respuesta

1

Debe poner el atributo android:background="@color/silver" en TableRow.

Tuve el mismo problema con LinearLayout dentro de ScrollView.

creo que sirve,

pelusa

+0

No estoy tratando de colorear la fila. Lo estaba usando como un mecanismo de depuración para determinar por qué mi diseño relativo no abarcará toda la fila. – phogel

6

Así que se había trasladado temporalmente de este problema, pero volvió a surgir. Para reiterar, el problema que estaba viendo era que un diseño relativo dentro de una fila de la tabla no abarcaría toda la fila, independientemente de lo que establezca su ancho y alto. He encontrado una solución que obliga a cualquier diseño para abarcar la fila de tabla en su totalidad (horizontal):

<TableRow xmlns:android="http://schemas.android.com/apk/res/android" 
      android:id="@+id/detail_row" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content"> 
    <RelativeLayout android:layout_height="fill_parent" 
        android:layout_width="0dp" 
        android:layout_weight="1" 
        android:orientation="horizontal"> 

Nota esto parece estar en contradicción directa con lo que la fila de la tabla docs java Estado:

El los hijos de un TableRow no necesitan para especificar los atributos layout_width y layout_height en el archivo XML . TableRow siempre impone que los valores sean, respectivamente, FILL_PARENT y WRAP_CONTENT.

+1

Usted acaba de hacer mi día y me ayuda a cumplir mi fecha límite. ¡Gracias un montón! – zabawaba99

12

Pruebe la configuración de android: stretchColumns = "0" o bien android: stretchColumns = "*" en su etiqueta TableLayout.

+0

guau, esa es una respuesta perfecta! – PCoder

Cuestiones relacionadas