devnews.pl

Main Menu

  • Informacje
    • Systemy i przeglądarki
    • Gadżety
  • Narzędzia
  • Frontend
  • Backend
  • QA
  • Języki programowania

logo

devnews.pl

  • Informacje
    • Systemy i przeglądarki
    • Gadżety
  • Narzędzia
  • Frontend
  • Backend
  • QA
  • Języki programowania
Frontend
Home›Frontend›Constraint Layout 2.0 – najnowsza biblioteka jetpack

Constraint Layout 2.0 – najnowsza biblioteka jetpack

By Bernadeta Zapała
8 września 2020
143
0
Share:

Udostępniono najnowszą wersję biblioteki Constraint Layout 2.0. Dzięki niej można szybko tworzyć złożone układy, także z narzędziami zintegrowanymi z Android Studio do podglądu XML. Oprócz tego dla Constraint Layout stworzono repozytorium github, obecnie tylko do odczytu.

Flow

Flow (przepływ) jest nowo dodanym układem. Pozwala on na tworzenie łańcuchów przechodzących do kolejnej linii lub sekcji ekranu.

Constraint Layout 2.0 - Flow

Animacja przedstawiająca tworzenie wielu łańcuchów, gdy elementy zapełniają wiersz

Układając wiele elementów w łańcuchu często zaczyna brakować im miejsca. Wtedy wystarczy użyć Flow i zbudować układ o dynamicznym rozmiarze, zgodnym np. z szerokością ekranu podczas obracania.

Przede wszystkim Flow jest układem wirtualnym, czyli grupą widoków uczestniczących w ograniczeniach i układzie, ale nie dodających poziomów. W celu zakończenia układu odwołują się do innych widoków w układzie łańcuchowym.

Funkcja Flow zawiera opcję wrapMode, konfigurującą trzy tryby przepływów: none, chain oraz align.

  • none – tworzy pojedynczy łańcuch, przepełniony, jeśli treść nie pasuje.
  • chain – na przepełnieniu tworzy kolejny łańcuch dla elementów przelewowych.
  • align – podobny do łańcucha, ale wyrównuje wiersze w kolumny.

Efekty można zobaczyć na poniższej wizualizacji.

Layer – nowy pomocnik w Constraint Layout 2.0

Layer pozwala na tworzenie wirtualnej warstwy z kilku widoków. Jednak w przeciwieństwie do Flow, nie przedstawia widoków. Pozwala na jednoczesne stosowanie przekształceń w kilku widokach. Jest to opcja przydatna przy budowie animacji obrotu (rotate), przesunięcia (translate) czy scalania (scale).

Constraint Layout 2.0

Przykładowe użycie warstwy w układzie wiązań:

<androidx.constraintlayout.helper.widget.Layer
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:constraint_referenced_ids="card1, card2, card3" />

Motion Layout

Jedną z najbardziej oczekiwanych funkcji Constraint Layout 2.0 jest układ ruchu. Jest to narzędzie do animacji do zbudowania praktycznie dowolnej animacji na Androida.

Motion Layer jest oparty na Constraint Layout, a nawet rozszerza go, przez co możliwe są animacje między kilkoma zestawami łańcuchów. Dzięki układowi ruchu programiści mogą koordynować animację wielu widoków.

Constraint Layout 2.0

Są dwie sytuacje, w których wyróżnia się Motion Layout:

  1. Przejścia stanów, czyli animacje, które są sterowane zmianą stanu, np. przez przejście użytkownika na ekran.
  2. Animacje do wyszukania – animacje sterowane przez inne dane wejściowe, takie jak zwijany pasek narzędzi, który reaguje na przewijanie

Motion Layout pozwala na dostosowanie sposobu przesuwania, przewijania, skalowania, obracania, zanikania, a także animowania atrybutów niestandardowych. Obsługuje także gesty oparte na fizyce i steruje prędkością animacji.

Podsumowanie Constraint Layout 2.0

Constraint Layout 2.0 posiada wiele nowych funkcji. Dokładna ich dokumentacja znajduje się na GitHub. Aby skorzystać z Constrain Layout wystarczy podbić wersję build.gradle:

implementation “androidx.constraintlayout:constraintlayout:2.0.1”

Źródło: Medium

TagsConstraint Layout 2.0FlowJetpackLayerMotion Layout

Share:

  • FrontendNarzędzia

    GitHub na urządzenia mobilne już dostępny

  • Informacje

    Hosting Firebase – rejestrowanie żądań i internacjonalizacja

  • Systemy i przeglądarki

    Firefox 83 przyspiesza i wprowadza tryb HTTPS-Only

  • 13 kwietnia 2021

    TypeScript 4.3 beta z oddzielnymi typami zapisu

  • 7 kwietnia 2021

    Billboard.js 3.0 z nowym typem świecy

  • 2 kwietnia 2021

    Silnik V8 9.0 beta udostępniony

  • 1 kwietnia 2021

    ReacType 6.0 z nowym dashboardem

  • 29 marca 2021

    Udostępniono Android 12 Developer Preview 2

  • 24 marca 2021

    Git 2.31 dostępny z konserwacją w tle

  • 19 marca 2021

    Relay Hooks – nowy zestaw interfejsów API

  • 18 marca 2021

    Deno 1.8 ze wsparciem interfejsu API WebGPU 

  • 16 marca 2021

    React Native 0.64 z silnikiem Hermes na iOS

  • 9 marca 2021

    Windows Terminal Preview 1.7 z lepszym zarządzaniem oknami

  • 3 marca 2021

    Vite 2.0 wydane z nowymi wtyczkami

  • 25 lutego 2021

    ReacType 5.0 – zmiany we wprowadzaniu komponentów

  • 23 lutego 2021

    Dapr v.1.0 gotowy do fazy produkcji

  • 22 lutego 2021

    ReScript 9.0 z zewnętrzną konfiguracją stdlib

  • 22 lutego 2021

    One UI 3.1 z ciekawymi nowościami dla urządzeń Samsunga

  • 22 lutego 2021

    Windows Terminal Preview 1.6 z nową sekcją ustawień

  • 15 lutego 2021

    Visual Studio Code 1.53 z ulepszeniami debugowania

  • 8 lutego 2021

    Edge 89 beta, Edge Dev 90 i nowości na kanale Canary

  • 2 lutego 2021

    Firefox 85 i Firefox Nightly – nowe wersje przeglądarki Mozilli

  • 29 stycznia 2021

    Billboard.js 2.2.0 z nowymi funkcjami wykresów

  • 26 stycznia 2021

    Kendo UI R1 2021 – nowości dla bibliotek

  • 21 stycznia 2021

    Narzędzie Vno – połączenie Vue i Deno

  • 19 stycznia 2021

    GitHub Enterprise Server 3.0 RC – kandydat do wydania

  • 15 stycznia 2021

    TypeScript 4.2 Beta z ulepszeniami typów krotek

  • 13 stycznia 2021

    Styczniowy Patch Tuesday z luką 0-day

  • 11 stycznia 2021

    Safari Technology Preview 118 dostępne dla programistów

  • 8 stycznia 2021

    Microsoft Launcher na Androida z usprawnionym dotykiem

  • 7 stycznia 2021

    WebStorm 2020.3.1 dostępny dla urządzeń z Apple Silicon

  • 22 grudnia 2020

    ReScript 8.4 z przypiętymi zależnościami

  • 14 grudnia 2020

    Edge 88 beta i przeglądarka na kanale Canary dostępne!

 

 

Jesteśmy pasjonatami najnowszych technologii w świecie programowania. Zbieramy dla Was informacje i porady z całego świata, które sprawią, że Twoja praca stanie się jeszcze bardziej efektywna.

Obserwuj nas codziennie, aby być na bieżąco oraz śmiało udostępniaj nasze posty.

Zespół DevNews

Kategorie

  • Backend
  • Bez kategorii
  • Frontend
  • Gadżety
  • Informacje
  • Języki programowania
  • Narzędzia
  • QA
  • Systemy i przeglądarki

OBSERWUJ NAS

KONTAKT

Chcesz się z nami skontaktować?

Napisz do nas wiadomość: kontakt@devnews.pl

www.devnews.pl | DEVNEWS 2020 | Newsy i ciekawostki ze świata IT