RecyclerView – cuadrícula horizontal de dos hileras, segunda fila

Estoy tratando de hacer una rejilla de desplazamiento horizontal. Tiene dos filas. La segunda fila está desplazada (por la mitad del ancho de un elemento, pero eso es trivial para calcular y no importa aquí).

Actualmente estoy usando RecyclerView y el GridLayoutManager de https://github.com/antoniolg/RecyclerViewExtensions/tree/master/library/src/main/java/com/antonioleiva/recyclerviewextensions

Sin embargo, la compensación está resultando extremadamente difícil.

Debería terminar pareciendo http://i.imgur.com/XrbnV5x.png

¿Alguien tiene alguna sugerencia para hacer la segunda fila escalonada como en la imagen de arriba?

2 Solutions collect form web for “RecyclerView – cuadrícula horizontal de dos hileras, segunda fila”

Utilice StaggeredGridLayoutManager con una ItemDecoration que agrega el desplazamiento al elemento en la posición 0. del adaptador. Obtendrá la salida deseada. (Vía getItemOffsets ). Alternativamente, en lugar de una ItemDecoration, cuando se llama onBind, puede establecer el ancho del primer elemento de tal manera que incluya el espacio a la izquierda.

Si el conjunto de datos cambia, no llame a notifyDataSetChanged, que restablecerá los cálculos históricos en SGLM. En su lugar, utilice eventos de notificación detallados como notifyItemRangeInserted para que SGLM pueda volver a calcular el diseño sin restablecer posiciones.

No sé si todavía estás trabajando en esto, pero mi enfoque sería hacer que los elementos 2 a la vez (arriba / abajo) con el desplazamiento adecuado, y luego jugar con sus márgenes horizontales (ponerlos a negativo) Para crear la superposición entre los puntos 2 y 3, etc.

Tendrías que vincular OnTouchListeners a los elementos individuales que se están procesando, no a las entradas de RecyclerView.

  • ¿Cómo evitar el parpadeo mientras se actualiza gridview?
  • ¿Cómo inflar otro diseño dentro de getView () del adaptador gridview en android?
  • gridview de las imágenes no se está actualizando
  • En el adaptador gridview, getView (position == 0) fue invocado demasiadas veces para medir el diseño cuando setImageBitmap () en un cargador
  • Android obtener la posición del elemento seleccionado en gridview
  • ¡Ayuda! ¿Cómo puedo crear una aplicación de calendario para Android?
  • Cómo mostrar el texto en la imagen
  • Cómo encontrar el elemento dentro de un gridview en Android?
  • ¿Cómo conservo el resaltado de elementos seleccionado en gridview cuando cambia numColumns?
  • Android ¿Cómo puedo emular el comportamiento de @android: id / empty en un GridView?
  • El primer elemento (ImageView) en un Gridview tiene valor nulo para el campo mAttachInfo
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.