-2

Je veux créer une grille dans les applications où supposonscolonnes dynamiques dans RecyclerView

  1. if i pass an arraylist with 5 elements first row should have 3 columns and next row should have 2 columns with centered
  2. si i passer un arraylist avec 6 éléments première ligne devrait avoir 3 colonnes et rangée suivante doit avoir 3 colonnes
  3. if i pass an arraylist with 7 elements first row should have 3 columns, next row should have 3 columns and next row should have 1 column with centered
+0

Si vous utilisez un GridView alors avez-vous essayé de mettre la colonne à 3 dans votre xml? – pooja

+0

@pooja nopes cela ne fonctionne pas, il affiche 3 dans la première colonne et 2 dans la seconde, mais pas au centre –

+0

ok maintenant obtenu le bon point de votre question après avoir vu votre image – pooja

Répondre

1

Je vous suggère d'utiliser FlexBoxLayout. Il est similaire aux CSS FlexBox et répond exactement à vos besoins.

Il suffit d'ajouter deppendency à Gradle:

dependencies { 
    compile 'com.google.android:flexbox:0.2.3' 
} 

Mettre la mise en page dans le fichier .xml:

<com.google.android.flexbox.FlexboxLayout/> 

et ajoutez les enfants de vue dynamique:

flexBox.addView(child);