2017-10-02 1 views
1

Je viens de mettre à jour Android Studio et de jouer avec Constraint Layout. Il y a quelques erreurs dans l'attribut xml.Cette vue n'est pas contrainte verticalement

Ce point de vue n'est pas contraint verticalement: lors de l'exécution, il va sauter à gauche sauf si vous ajoutez une contrainte verticale moins ... (Ctrl + F1) L'éditeur de mise en page vous permet de placer des widgets partout sur la toile layout_editor_absoluteX.) Ces attributs ne sont pas appliqués au moment de l'exécution, . Par conséquent, si vous placez votre mise en page sur un périphérique, les widgets peuvent apparaître dans un emplacement différent de celui affiché dans la zone . éditeur. Pour résoudre ce problème, assurez-vous qu'un widget possède des contraintes horizontales et verticales en faisant glisser à partir de les connexions de bord.

Je procédez comme suit:

Right click on designing part > Constraint Layout > Infer Constraints 

, mais je ne peux pas trouver Constraint Layout.

enter image description here

Répondre

0

J'ai remarqué aussi que les contraintes ne déduisent fonctionne pas toujours. Ce que je fais est, je:

  • Faites glisser la vue que je veux dans la mise en page de contrainte,
  • Aligner sur l'écran que je veux qu'il soit affiché,
  • créer manuellement une connexion entre sa contrainte gauche Contrainte à son parent ou à une autre vue,
  • Créer manuellement une connexion entre sa contrainte de contrainte supérieure à son parent ou à une autre vue.

Cette méthode de contrainte me rend inutile infer constraints car toutes mes vues sont contraintes. Si j'obtiens des erreurs, je clear all constraints puis crée manuellement les connexions pour chaque vue de la mise en page.

est ici une image décrivant ce que je veux dire:

constrained button

I contraint la gauche et en haut, et ce faisant, il ne faut rien déduire.

Remarque:

  • J'utilise Android 3.0 et une version ConstraintLayout de 1.0.2
  • Il fonctionne bien lors de la création que deux connexions qui sont perpendiculaires entre elles, soit en haut/gauche, haut/droite, bas/gauche, bas/droite.