Czy masz pojęcie, jak korzystać z nowego układu ograniczeń, który został niedawno ogłoszony na tegorocznych urządzeniach Google I/O?Jak korzystać z nowego układu ograniczeń systemu Android, aby zmniejszyć hierarchię widoków?
Odpowiedz
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'
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.
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.
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
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'
Używam najnowszej wersji Androida Studio i nie dostaję ikony Opcje obok komunikatu o błędzie. – AndroidDev
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.
Zmień zależności w pliku build.gradle
.
Zamiast tego użyj kompilacji com.android.support.constraint:constraint-layout:1.0.0-beta1
.
Google wydała oficjalną wersję 1.0 ConstraintLayout
teraz importować non wersję beta
compile 'com.android.support.constraint:constraint-layout:1.0.0'
Sprawdź tutaj informacji http://tools.android.com/recent/constraintlayout10isnowavailable
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'
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
i twierdzi, że
ConstraintLayout występuje około 40% lepsze w fazie środek/układ niż RelativeLayout
tę Codelab project pokazuje, jak korzystać z ConstaintLayout, aby zmniejszyć hierarchię widoku i spłaszczyć powyższy układ.
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 –
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
Od wersji Android studio 2.3 można używać polecenia 'com.android.support.constraint: constraint-layout: 1.0.2'. –