Czynności globalne

Możesz użyć działania globalnego, aby utworzyć wspólne działanie, którego mogą używać różne miejsca docelowe. Możesz na przykład użyć przycisków w różnych miejscach docelowych, aby przejść do tego samego ekranu głównego aplikacji.

Działanie globalne jest reprezentowane w Edytorze nawigacji przez małą strzałkę wskazującą powiązane miejsce docelowe, jak pokazano na rysunku 1.

Rysunek 1. Działanie globalne, które prowadzi do grafu zagnieżdżonego.

Tworzenie globalnego działania

Aby utworzyć działanie globalne:

  1. W Edytorze wykresów kliknij miejsce docelowe, aby je wyróżnić.
  2. Kliknij prawym przyciskiem myszy miejsce docelowe, aby wyświetlić menu kontekstowe.
  3. Kliknij Dodaj działanie > Globalne. Po lewej stronie celu pojawi się strzałka ().
  4. Aby przejść do widoku tekstu XML, kliknij kartę Tekst. Kod XML działania globalnego wygląda mniej więcej tak:

    <?xml version="1.0" encoding="utf-8"?>
    <navigation xmlns:app="http://schemas.android.com/apk/res-auto"
                xmlns:tools="http://schemas.android.com/tools"
                xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/main_nav"
                app:startDestination="@id/mainFragment">
    
      ...
    
      <action android:id="@+id/action_global_mainFragment"
              app:destination="@id/mainFragment"/>
    
    </navigation>
    

Używanie działania globalnego

Aby użyć w kodzie działania globalnego, prześlij identyfikator zasobu działania globalnego do metody navigate() dla każdego elementu interfejsu użytkownika, jak pokazano w tym przykładzie:

Kotlin

viewTransactionButton.setOnClickListener { view ->
    view.findNavController().navigate(R.id.action_global_mainFragment)
}

Java

viewTransactionsButton.setOnClickListener(new View.OnClickListener() {
   @Override
   public void onClick(View view) {
       Navigation.findNavController(view).navigate(R.id.action_global_mainFragment);
   }
});

Używanie bezpiecznych argumentów w przypadku działania globalnego

Informacje o używaniu bezpiecznych argumentów w przypadku działań globalnych znajdziesz w artykule Przesyłanie danych między miejscami docelowymi.

Dodatkowe materiały

Więcej informacji o nawigacji znajdziesz w tych dodatkowych materiałach.

Ćwiczenia z programowania

Filmy