Android: Alineación de cuatro cuadrados

Estoy tratando de alinear cuatro cuadrados de igual tamaño en una pantalla de Android y ahora he intentado lo que se siente como un millón de enfoques diferentes, sin embargo, ninguno de ellos parece funcionar :(.

Lo que tengo en este momento es lo siguiente:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/MasterLayout" android:layout_width="wrap_content" android:layout_height="fill_parent" android:background="#FFFFFF"> <TableLayout android:layout_width="fill_parent" android:id="@+id/mainlay" android:background="#444444" android:layout_weight="0.2" android:layout_height="wrap_content" android:padding="0dip"> <TableRow android:layout_weight="1" android:background="#BBBBBB" android:padding="0dip"> <ImageView android:id="@+id/ImageView1" android:layout_marginLeft="10px" android:layout_weight="1" android:layout_marginRight="5px" android:layout_height="wrap_content" android:layout_width="wrap_content" android:scaleType="centerInside" android:src="@drawable/bigbox_new"></ImageView> <ImageView android:id="@+id/ImageView2" android:layout_marginLeft="5px" android:layout_weight="1" android:layout_marginRight="10px" android:layout_height="wrap_content" android:layout_width="wrap_content" android:scaleType="centerInside" android:src="@drawable/bigbox_new"></ImageView> </TableRow> <TableRow android:layout_weight="1" android:padding="0dip"> <ImageView android:id="@+id/ImageView3" android:layout_marginLeft="10px" android:layout_weight="1" android:layout_marginRight="5px" android:layout_height="wrap_content" android:layout_width="wrap_content" android:scaleType="centerInside" android:src="@drawable/bigbox_new"></ImageView> <ImageView android:id="@+id/ImageView4" android:layout_marginLeft="5px" android:layout_weight="1" android:layout_marginRight="10px" android:layout_height="wrap_content" android:layout_width="wrap_content" android:scaleType="centerInside" android:src="@drawable/bigbox_new"></ImageView> </TableRow> </TableLayout> </LinearLayout> 

Esto básicamente hace el trabajo. Sin embargo, cada una de esas cuatro imágenes tiene un relleno enorme por encima y por debajo. ¿Cómo me deshago de eso? ¿O necesito usar un tipo de Layout diferente alltogether?

Para ayudar a ilustrar mi problema, aquí está una imagen. A la izquierda es lo que tengo, a la derecha es lo que necesito. Imagen

¡Muchas gracias!

¡Saludos, Markus!

3 Solutions collect form web for “Android: Alineación de cuatro cuadrados”

Elimine layout_weight de su TableRows y establezca su layout_height en wrap_content . A continuación, agregue un TableRow vacío debajo de ellos con layout_height establecido en fill_parent .

Trate de usar el scaleType como centerCrop, si el tamaño de la imagen es mayor, entonces esto hará el truco para usted. Pero esta no es la mejor manera de hacerlo, mejor sería cambiar los recursos de la imagen.

HTH!

Intente fijar la altura de ImageView a fill_parent, pienso que debe hacer el truco. De todos modos, sería de ayuda si sus propiedades XML se dividen en líneas, es difícil para el resto de nosotros para leer una sola línea de propiedades.

Además, ¿por qué coloca un TableLayout dentro de un LinearLayout? A menos que tengas más elementos dentro de ese Linear, puedes deshacerte de él.

  • Círculo transparente con borde
  • Eclipse no abrirá archivos Xml de Android
  • Cómo detener el evento de clic a través de un fondo semitransparente?
  • config.xml problema de formato
  • @Namespace en Android SimpleXml
  • Cómo almacenar datos desde un archivo XML a una base de datos SQLite en android
  • Elementos de menú no mostrados en la barra de menús
  • EditText oculto por el teclado cuando android: gravity = "center" - Android
  • XmlPullParserException esperado end_tag
  • ¿Cómo hacer Android componentes de auto y utilizarlo de una biblioteca jar?
  • ¿cómo puedo crear este tipo de diseño de chat en mi aplicación?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.