Odpowiedz

27

Możesz przejść do istniejącego pliku zasobów układu, otworzyć edytor wizualny i kliknąć prawym przyciskiem myszy RelativeLayout (na przykład) i kliknąć opcję konwersji na układ ograniczeń.

Trzeba też dodać zależność Gradle w pliku build.gradle:

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

Jeśli ktoś ogląda tę odpowiedź w dniu 8 listopada 2016 roku i proszę skorzystać 'com.android.support.constraint:-ograniczenia układ: 1.0.0-beta3' zarazić, najlepiej sposób rozwiązania tego problemu jest pokazany w tej odpowiedzi http://stackoverflow.com/a/39631045/1362418 –

+0

Ten nowy układ, czy powinniśmy nadal udostępniać tryb xml trybu krajobrazowego? Lub automatycznie ponownie przepłynie elementy bazowe na tej linii liny. – RoCk

+1

Od wersji Android studio 2.3 można używać polecenia 'com.android.support.constraint: constraint-layout: 1.0.2'. –

16

Od Docs

Jeśli aktualizujesz istniejący projekt, należy postępować w następujący sposób:

Upewnij się, że masz najnowsze repozytorium pomocy technicznej dla Androida (wersja 32 lub wyższa): // To była część, której mi brakowało

Kliknij Narzędzia> Android> Menedżer SDK. Kliknij kartę Narzędzia SDK. Wybierz opcję Android Support Repository, a następnie kliknij przycisk OK.

Dodaj zaktualizowaną bibliotekę Ograniczenie Układ jako zależność w pliku build.gradle:

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

na pasku narzędziowym lub synchronizacji powiadomienia, kliknij Sync projekt z Gradle Files.

Aby dodać nowy układ ograniczający do projektu:

  • prawym przyciskiem myszy na katalogu układ modułu, a następnie kliknij opcję Nowy> XML> XML Układ. Wprowadź nazwę układu i wprowadź "android.support.constraint.ConstraintLayout" dla znacznika głównego. Kliknij przycisk Zakończ.

Aby przekształcić istniejący układ, aby ograniczenie układ:

  • Otwórz istniejący układ w Android Studio i wybrać zakładkę Design w dolnej części okna edytora. W oknie Drzewo komponentów kliknij prawym przyciskiem myszy układ i kliknij polecenie Konwertuj na wiązanie.
5

Go mimo tego link od Google CodeLabs. Będziesz miał podstawową ideę Układ ograniczający i jak korzystać z różnych ograniczeń, takich jak Manual Constraint, Auto Connect & .

Dostępne jest również UI Builder & Inspector, które pomoże nam w szybszym tworzeniu interfejsu użytkownika.

4

Próbowałem wielu wersji, ale nie mogłem rozwiązać problemu! Wreszcie pozwolę Android Studio rozwiązać ten problem.

W pliku XML, obok komunikatu o błędzie można zobaczyć tę opcję! Kliknij na tym, by importować wersji reccomonded

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

lub można nacisnąć Alt + Enter, umieszczając kursor na linii błędu

mam-ograniczenia układ: 1.0.0-alpha8, kiedy wciśnięty alt + wprowadzić

skompilować 'com.android.support.constraint-ograniczenia: układ: 1.0.0-alpha8'

+0

Używam najnowszej wersji Androida Studio i nie dostaję ikony Opcje obok komunikatu o błędzie. – AndroidDev

0

1) Aby zaprojektować nowy układ używając ConstraintLayout, to zależność w pliku app.gradle

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

Uwaga: Dla każdego widoku w układzie, trzeba zawierać następujące atrybuty, inny poglądy są pokazane w (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) zamienić istniejący plik układu do układu więzów:

Otwórz istniejący układ w Android Studio i wybrać zakładkę Design w dolnej części okna edytora. W oknie Drzewo komponentów kliknij prawym przyciskiem myszy układ główny i kliknij polecenie Konwertuj na wiązanie. Następnie dodaj zdefiniowane atrybuty.

0

Zmień zależności w pliku build.gradle.

Zamiast tego użyj kompilacji com.android.support.constraint:constraint-layout:1.0.0-beta1.

2

dodać zależności

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

I utworzyć nowy plik xml układ -> zakładka projekt goto -> prawym przyciskiem układ korzeniowy i wybierz ostatnią opcję convert LinearLayout do ConstraintLayout

Zobacz zrzut ekranu

enter image description here

1

należy dodać google maven repozytorium na poziomie modułu Gradle pliku (ważną częścią)

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

następnie dodać ten wiersz w zależności:

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 opisuje kosztem tradycyjnej hierarchii układu. Daje to przykład ten układ zbudowany z zagnieżdżonych układów

Example view

i twierdzi, że

ConstraintLayout występuje około 40% lepsze w fazie środek/układ niż RelativeLayout

Codelab project pokazuje, jak korzystać z ConstaintLayout, aby zmniejszyć hierarchię widoku i spłaszczyć powyższy układ.

Codelab Project

Powiązane problemy