Umiejętności związane z Androidem
Wyświetl na GitHubieJetpack Navigation 3
android skills add navigation-3Navigation 3 to nowa biblioteka nawigacji zaprojektowana do współpracy z Compose. Dzięki Navigation 3 masz pełną kontrolę nad stosem wstecznym i możesz przechodzić do miejsc docelowych oraz z nich, dodając i usuwając elementy z listy. Tworzy elastyczny system nawigacji w aplikacji, zapewniając:
- konwencje modelowania stosu wstecznego, w którym każdy wpis reprezentuje treść, do której użytkownik przeszedł;
- interfejs, który automatycznie aktualizuje się wraz ze zmianami w stosie wstecznym (w tym animacjami);
- zakres dla elementów w stosie wstecznym, który umożliwia zachowanie stanu, gdy element znajduje się w stosie wstecznym;
- adaptacyjny system układu, który umożliwia wyświetlanie wielu miejsc docelowych jednocześnie i płynne przełączanie się między tymi układami;
- mechanizm komunikacji treści z layoutem nadrzędnym (metadane).
Ogólnie rzecz biorąc, Navigation 3 implementuje się w następujący sposób:
- Zdefiniuj treści, do których użytkownicy mogą przechodzić w Twojej aplikacji, z unikalnym kluczem, i dodaj funkcję, która będzie przekształcać ten klucz w treść. Zobacz Rozwiązywanie kluczy do treści.
- Utwórz stos wsteczny, do którego będą dodawane i z którego będą usuwane klucze, gdy użytkownicy będą poruszać się po aplikacji. Zobacz Tworzenie stosu wstecznego.
- Użyj
NavDisplay, aby wyświetlić stos wsteczny aplikacji. Za każdym razem, gdy stos wsteczny się zmieni, interfejs zostanie zaktualizowany, aby wyświetlić odpowiednie treści. Zobacz Wyświetlanie stosu wstecznego. - W razie potrzeby zmodyfikuj strategie scen
NavDisplay's , aby obsługiwać układy adaptacyjne i różne platformy. - Obsługuj precyzyjne linki, aby przechodzić bezpośrednio do miejsc docelowych.
Pełny kod źródłowy Navigation 3 znajdziesz w AOSP.
Ulepszenia w stosunku do Jetpack Navigation
Navigation 3 ulepsza oryginalny interfejs Jetpack Navigation API w następujący sposób:
- Umożliwia prostszą integrację z Compose.
- Daje pełną kontrolę nad stosem wstecznym.
- Umożliwia tworzenie układów, które mogą odczytywać więcej niż 1 miejsce docelowe ze stosu wstecznego jednocześnie, dzięki czemu mogą dostosowywać się do zmian rozmiaru okna i innych danych wejściowych.
Więcej informacji o zasadach Navigation 3 i wyborach dotyczących projektu interfejsu API znajdziesz w poście na blogu.
Przykładowe fragmenty kodu
W repozytorium z przepisami znajdziesz przykłady użycia elementów składowych Navigation 3 do rozwiązywania typowych problemów z nawigacją.