Haben Sie eine Idee, wie Sie das neue Constraint Layout verwenden können, das kürzlich auf der diesjährigen Google I/O angekündigt wurde?
Sie können zu einer vorhandenen Layout-Ressourcendatei wechseln, den visuellen Editor öffnen und mit der rechten Maustaste auf ein RelativeLayout klicken (zum Beispiel) und auf die Option zum Konvertieren in ein Constraint-Layout klicken.
Sie müssen auch die Gradle-Abhängigkeit in der Datei build.gradle hinzufügen:
compile 'com.Android.support.constraint:constraint-layout:1.0.0'
Aus Dokumente
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 mir fehlte
Klicken Sie auf Extras> Android> SDK-Manager ... _. Klicken Sie auf die Registerkarte SDK-Tools . Wählen Sie Android Support Repository aus und klicken Sie auf OK.
Fügen Sie die aktualisierte Constraint Layout-Bibliothek als Abhängigkeit in Ihre build.gradle-Datei hinzu:
dependencies {
compile 'com.Android.support.constraint:constraint-layout:1.0.0'
}
Klicken Sie in der Symbolleiste oder in der Synchronisierungsbenachrichtigung auf Projekt mit Abstufungsdateien synchronisieren.
So fügen Sie Ihrem Projekt ein neues Constraint-Layout hinzu:
So konvertieren Sie ein vorhandenes Layout in ein Abhängigkeitslayout:
Gehen Sie durch diesen Link aus Google CodeLabs. Sie werden die Grundidee von Constraint Layout und die Verwendung verschiedener Einschränkungen wie Manual Constraint
, Auto Connect
& Inference
kennen.
Außerdem gibt es UI Builder
& Inspector
, mit dem wir eine schnellere Benutzeroberfläche erstellen können.
Ich habe viele Versionen ausprobiert, konnte das Problem jedoch nicht lösen! Schließlich lasse ich Android Studio, um dieses Problem zu lösen.
In der XML-Datei sehen Sie neben der Fehlermeldung diese Option! Klicken Sie darauf, um die empfohlene Version zu importieren
sie können auch Alt + Eingabe drücken, indem Sie den Cursor in die Fehlerzeile setzen
Ich bekam ein Constraint-Layout: 1.0.0-alpha8, wenn ich Alt + Enter drückte
kompilieren 'com.Android.support.constraint: constraint-layout: 1.0.0-alpha8'
abhängigkeiten hinzufügen
compile 'com.Android.support.constraint:constraint-layout:1.0.0-alpha9'
Und erstellen Sie eine neue Layout-XML-Datei -> Gehen Sie zur Registerkarte Design ->, klicken Sie mit der rechten Maustaste auf Ihr Stammlayout und wählen Sie die letzte Option LinearLayout in ConstraintLayout konvertieren
Siehe Screenshot
sie sollten Google Maven Repository in der Modullevel-Datei ( wichtiger Teil ) hinzufügen.
repositories {
maven {
url 'https://maven.google.com'
}
}
fügen Sie 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'
Die Leistungsvorteile von ConstraintLayout verstehen beschreibt die Kosten einer herkömmlichen Layouthierarchie. Es gibt ein Beispiel für dieses Layout, das mit verschachtelten Layouts erstellt wurde
und behauptet das
ConstraintLayout ist in der Maß-/Layoutphase um etwa 40% besser als RelativeLayout
Dieses Codelab-Projekt zeigt, wie Sie mit ConstaintLayout die View-Hierarchie reduzieren und das oben genannte Layout reduzieren.
1) Um ein neues Layout mit ConstraintLayout zu entwerfen, schließen Sie die Abhängigkeit in die Datei app.gradle ein
compile 'com.Android.support.constraint:constraint-layout:1.0.0-alpha8'
Hinweis: Für jede Ansicht im Layout müssen Sie die folgenden Attribute angeben. Andernfalls werden die Ansichten mit (0,0) angezeigt.
<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) So konvertieren Sie eine vorhandene Layoutdatei in ein Constraint-Layout:
Öffnen Sie Ihr vorhandenes Layout in Android Studio und wählen Sie die Registerkarte Design unten im Editorfenster. Klicken Sie im Komponentenstrukturfenster mit der rechten Maustaste auf das Stammlayout, und klicken Sie auf In ConstraintLayout konvertieren. Fügen Sie dann die oben definierten Attribute hinzu.
Google hat die offizielle Version 1.0 ConstraintLayout veröffentlicht.
jetzt die Nicht-Beta-Version importieren
compile 'com.Android.support.constraint:constraint-layout:1.0.0'
Überprüfen Sie hier info http://tools.Android.com/recent/constraintlayout10isnowavailable
Ändern Sie die Abhängigkeiten in der Datei build.gradle
.
Verwenden Sie stattdessen compile com.Android.support.constraint:constraint-layout:1.0.0-beta1
.