RecyclerView autofit LayoutManager

Estoy usando RecyclerView con StaggeredGridLayoutManager .

Quiero este StaggeredGridLayoutManager o cualquier LayoutManager ocupar las áreas vacías si hay. Por ejemplo, si establezco el spanCount = 3 debe ocupar todo el ancho de la pantalla incluso tengo 2 elementos o 1 elementos. En StaggeredGridLayoutManager puedo completar una sola fila por: setFullSpan(true); Pero no puede abarcar 2 elementos para una sola fila.

Mi código para RecyclerView :

 StaggeredGridLayoutManager sglm= new StaggeredGridLayoutManager(spanCount,StaggeredGridLayoutManager.VERTICAL); sglm.setGapStrategy(StaggeredGridLayoutManager.GAP_HANDLING_MOVE_ITEMS_BETWEEN_SPANS); 

He intentado AsymmetricGridView y twoway-view, pero siempre hay un área vacía

Recojo algunas capturas de pantalla de la aplicación de Facebook:

Introduzca aquí la descripción de la imagen

Y aquí está la aplicación de Google Keep, ya que puedes ver que la altura de la fila está fija para cada fila, pero el ancho de los elementos es flexible y nunca he visto ningún área vacía con Google Keep:

Introduzca aquí la descripción de la imagen

Y cuando lo estoy usando siempre hay un área vacía, como se puede ver la parte negra de la imagen está vacía. Quiero que el RecyclerView ocupe ese área extendiendo mis filas como en la aplicación de Google Keep:

Introduzca aquí la descripción de la imagen

He visitado esta página: android-how-to-create-a-facebook-like-images-gallery-grid, pero no me ayudó.

Esta es la otra página que he visitado: grid-of-images-like-facebook-for-android

¿Hay alguien utiliza RecyclerView o cualquier View como eso? ¿Puede alguien sugerirme cualquier manera o cualquier idea o guiarme a donde debo comenzar. Gracias de antemano y tener un buen día.

Compruebe esto en Git

BitFrames

Le ayuda a establecer las imágenes que desee.

Compruebe esto en Play Store

Aplicación PlayStore

 /** * A LayoutManager that lays out children in a staggered grid formation. * It supports horizontal & vertical layout as well as an ability to layout children in reverse. * <p> * Staggered grids are likely to have gaps at the edges of the layout. To avoid these gaps, * StaggeredGridLayoutManager can offset spans independently or move items between spans. You can * control this behavior via {@link #setGapStrategy(int)}. */ /** * Sets the gap handling strategy for StaggeredGridLayoutManager. If the gapStrategy parameter * is different than the current strategy, calling this method will trigger a layout request. * * @param gapStrategy The new gap handling strategy. Should be * {@link #GAP_HANDLING_MOVE_ITEMS_BETWEEN_SPANS} or {@link * #GAP_HANDLING_NONE}. * @see #getGapStrategy() */ public void setGapStrategy(int gapStrategy) { assertNotInLayoutOrScroll(null); if (gapStrategy == mGapStrategy) { return; } if (gapStrategy != GAP_HANDLING_NONE && gapStrategy != GAP_HANDLING_MOVE_ITEMS_BETWEEN_SPANS) { throw new IllegalArgumentException("invalid gap strategy. Must be GAP_HANDLING_NONE " + "or GAP_HANDLING_MOVE_ITEMS_BETWEEN_SPANS"); } mGapStrategy = gapStrategy; setAutoMeasureEnabled(mGapStrategy != GAP_HANDLING_NONE); requestLayout(); } 
  • Android setOnScrollListner en RecyclerView obsoleta
  • Android: RecyclerView dentro de un ScrollView
  • CardView dentro de RecyclerView tiene márgenes adicionales
  • Cómo hacer la primera imagen más grande en Gridlayout?
  • Deslizar para mostrar otro diseño oculto en la vista de reciclador android
  • Recycler View Adapter con EditText
  • Obtener encabezados de sección para trabajar con SuperSLiM y RecyclerView
  • Cómo resaltar el elemento seleccionado de Recycler View?
  • Diseño cuadrado en GridLayoutManager para RecyclerView
  • Desplazamiento abrupto con NestedScrollView en ViewPager Fragmento dentro de un CoordinatorLayout Android
  • Diseño como la aplicación HotStar
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.