Unterschiedliche (dynamische) Elementhöhe im GridLayoutManager

8

Ich habe einen RecyclerView und GridLayoutManager mit 2 Spalten. Wie kann ich den LayoutManager zwingen, mit der Vorlage auf dem ersten Screenshot übereinzustimmen? Jetzt habe ich Ergebnis wie auf dem 2. Screenshot.

Brauchen Sie das Ergebnis:

Aktuelles Ergebnis:

    
BlizzedRu 24.01.2016, 17:05
quelle

2 Antworten

18

GridLayoutManager verwendet ein Gitter, und Sie können für verschiedene Zellen einen bestimmten Bereich, aber nicht unterschiedliche Höhen festlegen.

Was Sie möchten, ist StaggeredGridLayoutManager . Dadurch werden die Objekte einfach auf den Bildschirm gelegt, wenn sie passen, was zu dem benötigten Ergebnis führt. Sie können das Neuordnungsverhalten auch ändern, indem Sie verwenden setGapStrategy .

    
David Medenjak 24.01.2016, 18:13
quelle
4

Es ist wirklich einfach. Sie müssen diesen Manager zu RecycleView hinzufügen:

%Vor%

in meinem Fall sieht es so aus:

%Vor%     
EliaszKubala 15.11.2016 10:15
quelle