Comme vous pouvez le vérifier dans le document:
Nom de classe du Layout Manager
à utiliser.
La classe doit s'étendre androidx.recyclerview.widget.RecyclerViewView$LayoutManager
et avoir un constructeur par défaut ou un constructeur avec la signature(android.content.Context, android.util.AttributeSet, int, int)
Si le nom commence par a '.'
, le package d'application est préfixé. Sinon, si le nom contient un '.'
, le nom de classe est supposé être un nom de classe complet. Sinon, le package de vue du recycleur ( androidx.appcompat.widget
) est préfixé
Avec androidx, vous pouvez utiliser:
<androidx.recyclerview.widget.RecyclerView
xmlns:app="http://schemas.android.com/apk/res-auto"
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager">
Avec les bibliothèques de support, vous pouvez utiliser:
<android.support.v7.widget.RecyclerView
xmlns:app="http://schemas.android.com/apk/res-auto"
app:layoutManager="android.support.v7.widget.GridLayoutManager" >
Vous pouvez également ajouter ces attributs:
android:orientation
= "horizontal|vertical"
: Pour contrôler l'orientation de la LayoutManager (par exemple LinearLayoutManager
)
app:spanCount
: pour définir le nombre de colonnes pour GridLayoutManager
Exemple:
<androidx.recyclerview.widget.RecyclerView
app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"
app:spanCount="2"
...>
ou:
<androidx.recyclerview.widget.RecyclerView
app:layoutManager="androidx.recyclerview.widget.LinearLayoutManager"
android:orientation="vertical"
...>
Vous pouvez également les ajouter en utilisant l' tools
espace de noms (c'est-à tools:orientation
- dire et tools:layoutManager
), puis cela n'a d'impact que sur l'aperçu de l'EDI et vous pouvez continuer à définir ces valeurs dans le code.