Je voudrais contraindre les côtés gauche et droit d'une vue aux marges de la vue parent et la faire remplir l'espace alloué. Cependant, définir la largeur sur match_parent
ou wrap_content
semble produire le même résultat.
Y a-t-il quelque chose d'équivalent à match_constraints (par opposition à match_parent et wrap_content)? Affectent-ils match_parent
et wrap_content
affectent-ils la disposition ou sont-ils ignorés dans la nouvelle disposition des contraintes?
J'adore ce nouveau système de mise en page pour ma plate-forme préférée!
match_parent
ne fonctionne pas pour vous?Réponses:
match_parent
n'est pas pris en charge. Avec0dp
, vous pouvez considérer vos contraintes comme «évolutives» plutôt que comme «remplissant ce qui reste».En outre,
0dp
peut être défini par une position, oùmatch_parent
repose sur son parent pour sa position (x, y et largeur, hauteur)la source
match_parent
n'est pas autorisé. Mais vous pouvez en fait définir la largeur et la hauteur sur 0dp et définir les contraintes supérieure et inférieure ou gauche et droite sur "parent".Donc par exemple si vous voulez avoir la
match_parent
contrainte sur la largeur de l'élément, vous pouvez le faire comme ceci:la source
Apparemment,
match_parent
c'est:ConstraintLayout
ConstraintLayout
Donc, si vous avez besoin que vos vues fonctionnent comme
match_parent
, alors:ConstraintLayout
devraient utiliser0dp
match_parent
Exemple:
la source
match_parent
n'est pas pris en charge parConstraintLayout
. Définissez la largeur sur0dp
pour qu'elle corresponde aux contraintes.la source
Du doc officiel :
Donc, si vous voulez obtenir un
MATCH_PARENT
effet, vous pouvez le faire:la source
Vous pouvez vérifier votre adaptateur.
J'ai eu le même problème que vous lorsque j'utilisais 1. Vous pouvez essayer 2.
la source
Pour rendre votre vue en tant que match_parent n'est pas possible directement, mais nous pouvons le faire d'une manière un peu différente, mais n'oubliez pas d'utiliser l'attribut Gauche et Droite avec Début et Fin, car si vous utilisez le support RTL, il sera nécessaire.
la source
définir la largeur ou la hauteur (tout ce dont vous avez besoin pour correspondre au parent) à 0dp et définir les marges de gauche, droite, haut, bas pour agir comme parent correspondant
la source
dans le bureau doc: https://developer.android.com/reference/android/support/constraint/ConstraintLayout
Lorsqu'une dimension est définie sur MATCH_CONSTRAINT, le comportement par défaut consiste à faire en sorte que la taille résultante occupe tout l'espace disponible.
Utilisation de 0dp, qui est l'équivalent de "MATCH_CONSTRAINT"
Important: MATCH_PARENT n'est pas recommandé pour les widgets contenus dans un ConstraintLayout. Un comportement similaire peut être défini en utilisant MATCH_CONSTRAINT avec les contraintes gauche / droite ou haut / bas correspondantes définies sur "parent"
la source
Si vous voulez que TextView soit au centre du parent ..
Votre mise en page principale est Mise en page de contrainte
la source
J'ai trouvé une autre réponse lorsqu'il y a une disposition de contrainte à l'intérieur de la vue de défilement, alors nous devons mettre
à la vue de défilement
et
dans la disposition des contraintes
Exemple:
la source