rowspan recyclerview gridlayout examples cardview 3x3 android layout grid

recyclerview - grid layout android xml



Soporte de Grid Layout en la API de Android 10 (3)

Desarrollé una aplicación con API objetivo como 15. El diseño incluye un diseño de cuadrícula. Ahora cuando estoy cambiando la API de Target a 10, tengo problemas con el diseño de la cuadrícula y otro elemento ''espacio''. Eclipse me pide que descargue una biblioteca de soporte para 2.3.3, lo cual hice ... Pero aún tengo el problema.



Si utiliza Android Studio, una vez que haya descargado la biblioteca de soporte (como se mencionó @MH.), Debe usar File->Import Module... , luego seleccione la ubicación del soporte de GridLayout, que para mí se encuentra aquí: <sdk_folder>/extras/android/support/v7/gridlayout .

A continuación, en lugar de usar <Gridlayout> en su archivo de diseño xml, usa <android.support.v7.widget.GridLayout> . Aquí hay un ejemplo:

<android.support.v7.widget.GridLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" app:useDefaultMargins="true" app:alignmentMode="alignBounds" app:columnOrderPreserved="false" app:columnCount="4" >

Los elementos en el diseño harán referencia a la app lugar de a android para las propiedades de GridLayout como se ve arriba y en los elementos secundarios:

<TextView android:textSize="32dip" app:layout_columnSpan="4" app:layout_gravity="center_horizontal" />

Finalmente, la referencia de la biblioteca de soporte GridLayout se debe agregar a la sección de dependencies de /src/build.gradle :

dependencies { compile ''com.android.support:appcompat-v7:+'' compile ''com.android.support:gridlayout-v7:+'' }


GridLayout ha sido respaldado para ser compatible con API de nivel 7 y superior. Es (algo así como) parte de la biblioteca de soporte. Después de descargar la biblioteca de soporte, encontrará un proyecto de biblioteca Android en su carpeta sdk local ubicada en:

<sdk_folder>/extras/android/compatibility/v7/gridlayout

Configúralo como una dependencia del proyecto en el que estás trabajando. Después de eso, deberá cambiar las referencias a lo largo de su proyecto de la versión de nivel 15 a esta compatibilidad con el fin de admitir dispositivos pre-ICS. En los archivos de diseño, cambie su xml de GridLayout a android.support.v7.widget.GridLayout. El uso debe ser similar, si no idéntico.

Respecto al widget Space : no he usado este (todavía), pero parece ser algo que podría ser reemplazado ya sea configurando margen / relleno en las vistas existentes o agregando su propia View genérica que es completamente transparente.