Konfigurowanie paska aplikacji

Wypróbuj metodę Compose
Jetpack Compose to zalecany zestaw narzędzi interfejsu na Androida. Dowiedz się, jak dodawać komponenty w Compose.

W najprostszej postaci pasek działań wyświetla tytuł aktywności po jednej stronie i rozszerzone menu po drugiej. Nawet w tej podstawowej formie pasek aplikacji dostarcza użytkownikom przydatnych informacji i zapewnia aplikacjom na Androida spójny wygląd.

Obraz pokazujący pasek aplikacji w aplikacji Nowości w Androidzie
Rysunek 1. Pasek aplikacji z ikoną działania w aplikacji „Now in Android”.

Wszystkie aktywności, które korzystają z motywu domyślnego, mają pasek aplikacji ActionBar. Funkcje paska aplikacji są dodawane do natywnego elementu ActionBar w różnych wersjach Androida. W rezultacie natywny ActionBar działa inaczej w zależności od wersji Androida używanej na urządzeniu.

Z drugiej strony funkcje są dodawane do wersji biblioteki AndroidX AppCompatToolbar, co oznacza, że są one dostępne na urządzeniach, które korzystają z bibliotek AndroidX.

Z tego powodu do implementowania pasków aplikacji w aktywnościach używaj klasy Toolbar z biblioteki AndroidX. Korzystanie z paska narzędzi biblioteki AndroidX zapewnia spójne działanie aplikacji na jak największej liczbie urządzeń.

Dodawanie paska narzędzi do aktywności

Poniżej znajdziesz instrukcje konfigurowania Toolbar jako paska aplikacji aktywności:
  1. Dodaj do projektu bibliotekę AndroidX zgodnie z opisem w tym artykule.
  2. Upewnij się, że aktywność obejmuje:AppCompatActivity

    Kotlin

    class MyActivity : AppCompatActivity() {
      // ...
    }

    Java

    public class MyActivity extends AppCompatActivity {
      // ...
    }
  3. W manifeście aplikacji ustaw element <application>NoActionBar� Użycie jednego z tych motywów uniemożliwia aplikacji korzystanie z natywnej klasy ActionBar do wyświetlania paska aplikacji.
    <application
        android:theme="@style/Theme.AppCompat.Light.NoActionBar"
        />
  4. Dodaj Toolbar do układu aktywności. Na przykład ten kod układu dodaje element Toolbar i nadaje mu wygląd elementu unoszącego się nad aktywnością:
    <androidx.appcompat.widget.Toolbar
       android:id="@+id/my_toolbar"
       android:layout_width="match_parent"
       android:layout_height="?attr/actionBarSize"
       android:background="?attr/colorPrimary"
       android:elevation="4dp"
       android:theme="@style/ThemeOverlay.AppCompat.ActionBar"
       app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>

    Zalecenia dotyczące wysokości paska aplikacji znajdziesz w specyfikacji Material Design.

    Umieść pasek narzędzi u góry układu aktywności, ponieważ używasz go jako paska aplikacji.

  5. W metodzie onCreate() aktywności wywołaj metodę setSupportActionBar() aktywności i przekaż pasek narzędzi aktywności, jak pokazano w tym przykładzie. Ta metoda ustawia pasek narzędzi jako pasek aplikacji dla aktywności.

    Kotlin

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_my)
        // The Toolbar defined in the layout has the id "my_toolbar".
        setSupportActionBar(findViewById(R.id.my_toolbar))
    }

    Java

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_my);
        Toolbar myToolbar = (Toolbar) findViewById(R.id.my_toolbar);
        setSupportActionBar(myToolbar);
    }

Twoja aplikacja ma teraz podstawowy pasek działań. Domyślnie pasek działań zawiera nazwę aplikacji i menu przepełnienia, które początkowo zawiera element Ustawienia. Możesz dodać więcej działań do paska działań i rozszerzonego menu, jak opisano w sekcji Dodawanie działań i obsługa ich.

Korzystanie z metod narzędziowych paska aplikacji

Gdy ustawisz pasek narzędzi jako pasek aplikacji aktywności, uzyskasz dostęp do metod narzędziowych udostępnianych przez klasę ActionBar biblioteki AndroidX. Dzięki temu możesz wykonywać przydatne czynności, np. ukrywać i wyświetlać pasek aplikacji.

Aby użyć metod narzędziowych ActionBar, wywołaj metodę getSupportActionBar() działania. Ta metoda zwraca odwołanie do obiektu AppCompat ActionBar. Gdy uzyskasz ten odnośnik, możesz wywołać dowolną z metod ActionBar, aby dostosować pasek aplikacji. Aby na przykład ukryć pasek aplikacji, wywołaj funkcję ActionBar.hide().