Grid Layout en Android
En android podemos utilizar dos Grid Layouts: android.widget.GridLayout y androidx.gridlayout.widget.GridLayout. Recomendable utilizar el Gridlayout que pertenece al paquete androidx el cual vamos a utilizar a continuación.
Importar dependencia
Se debe añadir la siguiente dependencia en nuestro archivo build.gradle:
implementation 'androidx.gridlayout:gridlayout:1.0.0'
En nuestro archivo de vista debemos utilizar el Grid Layout importado de esa dependencia, así:
<androidx.gridlayout.widget.GridLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
</androidx.gridlayout.widget.GridLayout>
Ejemplo Básico
El siguiente es un ejemplo sencillo con 6 iconos que ocupan toda la pantalla:
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<androidx.gridlayout.widget.GridLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
app:columnCount="2"
app:useDefaultMargins="true">
<ImageView
android:src="@drawable/ic_forbidden"
app:layout_columnWeight="1"
app:layout_rowWeight="1" />
<ImageView
android:src="@drawable/ic_qr_code_scanner_black"
app:layout_columnWeight="1"
app:layout_rowWeight="1" />
<ImageView
android:src="@drawable/ic_forbidden"
app:layout_columnWeight="1"
app:layout_rowWeight="1" />
<ImageView
android:src="@drawable/ic_forbidden"
app:layout_columnWeight="1"
app:layout_rowWeight="1" />
<ImageView
android:src="@drawable/ic_forbidden"
app:layout_columnWeight="1"
app:layout_rowWeight="1" />
<ImageView
android:src="@drawable/ic_forbidden"
app:layout_columnWeight="1"
app:layout_rowWeight="1" />
</androidx.gridlayout.widget.GridLayout>
</layout>
Para conocer más acerca de este componente que ha quedado un poco en desuso puede consultar la documentación oficial: https://developer.android.com/reference/kotlin/androidx/gridlayout/widget/GridLayout
¡Sígueme!, es gratis 🤙
Sin mas, solo queda decirte que me Sigas en Medium y que revises mis otras publicaciones, puede que encuentres algo interesante (nunca se sabe 😄). ¡Nos vemos luego!