Antwort

27

Sie können zu einer vorhandenen Layout-Ressourcendatei wechseln, den visuellen Editor öffnen und mit der rechten Maustaste auf ein RelativeLayout (z. B.) klicken und auf die Option zum Konvertieren in ein Constraint-Layout klicken.

Sie müssen auch die Gradle Abhängigkeit in build.gradle Datei hinzufügen:

compile 'com.android.support.constraint:constraint-layout:1.0.0' 
+4

Wenn jemand diese Antwort am 8. November sehen ist, 2016 und ab, benutzen Sie bitte 'com.android.support.constraint: Constraint-Layout: 1.0.0-beta3' Infect, die besten Weg, um dieses Problem zu lösen, wird in dieser Antwort gezeigt http://stackoverflow.com/a/39631045/1362418 –

+0

Dieses neue Layout, sollten wir noch Landscape-Modus XML für diese bereitstellen? Oder es wird automatisch die Komponentenbasis auf dieser Seillinie fließen. – RoCk

+1

Ab Android Studio 2.3 können Sie 'com.android.support.constraint: constraint-layout: 1.0.2' verwenden. –

16

Von Docs

Wenn Sie ein vorhandenes Projekt aktualisieren, gehen Sie wie folgt vor:

Stellen Sie sicher, dass Sie über das neueste Android-Support-Repository verfügen (Version 32 oder höher): // Dies war der Teil, der für mich fehlte

Klicken Sie auf Extras> Android> SDK-Manager. Klicken Sie auf die Registerkarte SDK-Tools. Wählen Sie das Android Support Repository und klicken Sie auf OK.

die aktualisierte Constraint-Layout Bibliothek als Abhängigkeit in Ihrer build.gradle Datei hinzufügen:

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

in der Symbolleiste oder Sync-Benachrichtigung, klicken Sie auf Sync-Projekt mit Gradle Dateien.

  • Rechtsklick auf dem Modul Layout-Verzeichnis, und klicken Sie auf Neu> XML> Layout XML:

    Um ein neues Constraint Layout zu Ihrem Projekt hinzufügen. Geben Sie einen Namen für das Layout ein und geben Sie "android.support.constraint.ConstraintLayout" für das Stamm-Tag ein. Klicken Sie auf Fertig stellen.

Um ein vorhandenes Layout zu einem Constraint-Layout konvertieren:

  • Ihr bestehendes Layout in Android Studio öffnen und das Register Design am unteren Rande des Editorfensters auswählen. Klicken Sie im Komponentenbaum mit der rechten Maustaste auf das Layout, und klicken Sie dann auf ConvertLayout.
5

Go obwohl dieser link von Google CodeLabs. Sie haben eine Grundidee von Constraint Layout und wie verschiedene Einschränkungen wie Manual Constraint, Auto Connect & Inference zu verwenden.

Auch gibt es UI Builder & Inspector die uns helfen wird, schneller UI zu bauen.

4

Ich habe viele Version versucht, aber ich konnte das Problem nicht lösen! Endlich lasse ich Android Studio dieses Problem lösen.

In der XML-Datei, Neben Fehlermeldung können Sie diese Option sehen! Klicken Sie auf das zu reccomonded Version

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

zu importieren oder können Sie drücken Sie Alt + geben Sie Ihren Cursor auf Fehlerzeile platzieren

Ich habe Constraint-Layout: 1.0.0-alpha8, wenn ich gedrückt alt + geben Sie

kompilieren 'com.android.support.constraint: Constraint-Layout: 1.0.0-alpha8'

+0

Ich verwende die neueste Version von Android Studio, und neben der Fehlermeldung wird das Symbol Optionen nicht angezeigt. – AndroidDev

0

1) Um ein neues Layout zu entwerfen ConstraintLayout verwenden, schließt die Abhängigkeit in der app.gradle Datei

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

Hinweis: Für jede Ansicht im Layout, müssen Sie folgende Attribute enthalten, sonst die Ansichten gezeigt werden um (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) Um eine vorhandene Layout-Datei in ein Constraint-Layout konvertieren:

Ihr bestehendes Layout in Android Studio öffnen und das Register Design am unteren Rande des Editorfensters auswählen. Klicken Sie im Fenster Komponentenbaum mit der rechten Maustaste auf das Stammlayout, und klicken Sie auf In ConstraintLayout konvertieren. Fügen Sie dann die oben definierten Attribute ein.

0

Ändern Sie die Abhängigkeiten in der Datei build.gradle.

Verwenden Sie stattdessen kompilieren com.android.support.constraint:constraint-layout:1.0.0-beta1.

2

hinzufügen Abhängigkeiten

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

Und neue Layout XML-Datei erstellen -> goto Design Registerkarte -> rechts klicken Sie mit root-Layout und wählen Sie letzte Option convert Linearlayout zu ConstraintLayout

Siehe Screenshot

enter image description here

1

Sie sollten hinzufügen google Maven-Repository in Modulebene gradle Datei (wichtiger Teil)

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

dann diese Zeile in Abhängigkeiten hinzu:

compile 'com.android.support.constraint:constraint-layout:1.0.2' 
compile 'com.android.support.constraint:constraint-layout-solver:1.0.2' 
1

Understanding the performance benefits of ConstraintLayout beschreibt die Kosten einer herkömmlichen Layout-Hierarchie. Es gibt ein Beispiel für dieses Layout mit verschachtelten Layouts gebaut

Example view

und behauptet, dass

ConstraintLayout etwa 40% besser im Takt/Layout-Phase führt als RelativeLayout

Diese Codelab project zeigt, wie die ConstaintLayout verwendet Ansicht Hierarchie zu reduzieren und die oben genannte Layout glättet.

Codelab Project