web-dev-qa-db-fra.com

Comment utiliser la nouvelle mise en page de contrainte Android pour réduire la hiérarchie des vues

Avez-vous une idée de la façon d'utiliser la nouvelle mise en page Constraint récemment annoncée lors de Google I/O de cette année?

32
Bogdan M.

Vous pouvez accéder à un fichier de ressources de présentation existant, ouvrir l'éditeur visuel, cliquer avec le bouton droit de la souris sur un RelativeLayout (par exemple), puis cliquer sur l'option à convertir en présentation de contrainte.

Vous devez également ajouter la dépendance Gradle dans le fichier build.gradle:

compile 'com.Android.support.constraint:constraint-layout:1.0.0'
28
Adrian Olar

De Docs

Si vous mettez à jour un projet existant, procédez comme suit:

Assurez-vous de disposer du dernier référentiel de support Android (version 32 ou supérieure): // c'était la partie qui me manquait

Cliquez sur Outils> Android> Gestionnaire de SDK . Cliquez sur l'onglet Outils du SDK . Sélectionnez Référentiel de support Android, puis cliquez sur OK.

Ajoutez la bibliothèque mise à jour Constraint Layout en tant que dépendance dans votre fichier build.gradle:

dependencies {
  compile 'com.Android.support.constraint:constraint-layout:1.0.0'
}

Dans la barre d'outils ou la notification de synchronisation, cliquez sur Synchroniser le projet avec des fichiers Gradle.

Pour ajouter une nouvelle présentation de contrainte à votre projet:

  • Cliquez avec le bouton droit sur le répertoire de présentation de votre module, puis cliquez sur Nouveau> XML> Présentation XML . Saisissez un nom pour la présentation, puis entrez "Android.support.constraint.ConstraintLayout" pour la balise racine . Cliquez sur Terminer.

Pour convertir une présentation existante en une présentation de contrainte:

  • Ouvrez votre mise en page existante dans Android Studio et sélectionnez l'onglet Conception au bas de la fenêtre de l'éditeur . Dans la fenêtre Arborescence des composants, cliquez avec le bouton droit de la souris sur la mise en page, puis cliquez sur Convertir en ConstraintLayout.
16
Mikelis Kaneps

Allez si ce link from Google CodeLabs. Vous aurez une idée de base de Mise en forme de contrainte et comment utiliser différentes contraintes telles que Manual Constraint, Auto Connect & Inference

De plus, il existe UI Builder & Inspector qui nous aidera à créer une interface utilisateur plus rapide. 

5
akashPatra

J'ai essayé plusieurs versions, mais je n'ai pas pu résoudre le problème! Enfin, je laisse Android Studio résoudre ce problème.

Dans le fichier XML, à côté du message d'erreur, vous pouvez voir cette option! Cliquez dessus pour importer la version enregistrée

 using version 1.0.0-alpha2 of the constraint library which is obsolete

ou vous pouvez appuyer sur alt + entrée en plaçant votre curseur sur la ligne d'erreur

J'ai obtenu contrainte-layout: 1.0.0-alpha8, quand j'ai appuyé sur alt + entrée

compiler 'com.Android.support.constraint: constraint-layout: 1.0.0-alpha8'

4
Darshn

ajouter des dépendances 

compile 'com.Android.support.constraint:constraint-layout:1.0.0-alpha9'

Et créez un nouveau fichier XML de mise en page -> passez à l'onglet de conception -> faites un clic droit sur votre mise en page racine et sélectionnez la dernière option convertir LinearLayout en ConstraintLayout

Voir la capture d'écran

 enter image description here

2
Arpit Patel

vous devez ajouter le référentiel google maven dans le fichier de niveau de module (partie importante

repositories {
    maven {
        url 'https://maven.google.com'
    }
}

puis ajoutez cette ligne dans les dépendances:

compile 'com.Android.support.constraint:constraint-layout:1.0.2'
compile 'com.Android.support.constraint:constraint-layout-solver:1.0.2'
1
faraz khonsari

Compréhension des avantages en termes de performances de ConstraintLayout décrit les coûts d’une hiérarchie de présentation traditionnelle. Il donne un exemple de cette disposition construite avec des dispositions imbriquées

 Example view

et prétend que

ConstraintLayout effectue environ 40% de mieux que RelativeLayout dans la phase de mesure/mise en page

Ce projet Codelab montre comment utiliser ConstaintLayout pour réduire la hiérarchie des vues et pour aplatir la présentation susmentionnée.

 Codelab Project

1
Eugene Brusov

1) Pour concevoir une nouvelle présentation à l'aide de ConstraintLayout, incluez la dépendance dans le fichier app.gradle.

compile 'com.Android.support.constraint:constraint-layout:1.0.0-alpha8'

Remarque: Pour chaque vue de la mise en page, vous devez inclure les attributs suivants, sinon les vues sont affichées en (0,0).

<Android.support.constraint.ConstraintLayout
    xmlns:Android="http://schemas.Android.com/apk/res/Android"
    xmlns:app="http://schemas.Android.com/apk/res-auto"
    ....>

        <View
           Android:id="@+id/top_view"
           .../>

        <View
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/top_view"
        app:layout_constraintBottom_toTopOf="@+id/bottom_view"
        ..../>

       <View
           Android:id="@+id/bottom_view"
           .../>

</Android.support.constraint.ConstraintLayout>

2) Pour convertir un fichier de présentation existant en présentation de contrainte:

Ouvrez votre mise en page existante dans Android Studio et sélectionnez l’onglet Conception en bas de la fenêtre de l’éditeur. Dans la fenêtre Arborescence des composants, cliquez avec le bouton droit de la souris sur la disposition racine, puis cliquez sur Convert to ConstraintLayout. Ensuite, incluez les attributs définis ci-dessus.

0
Logo

Google a publié la version officielle 1.0 ConstraintLayout

maintenant importer la version non beta

compile 'com.Android.support.constraint:constraint-layout:1.0.0'

Vérifiez ici info http://tools.Android.com/recent/constraintlayout10isnowavailable

0
Noorul

Modifiez les dépendances dans le fichier build.gradle

Utilisez la compilation com.Android.support.constraint:constraint-layout:1.0.0-beta1 à la place.

0
HaiZhong chen