W najbardziej podstawowej formie pasek działań z jednej strony zawiera tytuł aktywności, a po drugiej – rozszerzone menu. Nawet w takiej podstawowej formie pasek aplikacji dostarcza użytkownikom przydatnych informacji i nadaje aplikacjom na Androida spójny wygląd.
![Ilustracja pokazująca pasek aplikacji w aplikacji Now na Androida](https://developer.android.google.cn/static/images/ui/notifications/actions_actionbar.png?authuser=1&hl=pl)
Wszystkie aktywności korzystające z motywu domyślnego mają ActionBar
jako pasek aplikacji. Funkcje paska aplikacji są dodawane do natywnego interfejsu ActionBar
w różnych wersjach Androida. W związku z tym natywny ActionBar
działa różnie w zależności od wersji Androida, z którego korzysta urządzenie.
Z drugiej strony funkcje są dodawane do biblioteki Toolbar
w bibliotece AndroidX AppCompat, co oznacza, że są one dostępne na urządzeniach korzystających z bibliotek AndroidX.
Aby wdrożyć paski aplikacji aktywności, użyj klasy Toolbar
z biblioteki AndroidaX. Pasek narzędzi biblioteki AndroidaX zapewnia spójność działania aplikacji na jak największej liczbie urządzeń.
Dodawanie paska narzędzi do aktywności
Aby skonfigurowaćToolbar
jako pasek aplikacji Twojej aktywności:- Dodaj do projektu bibliotekę AndroidaX zgodnie z opisem w omówieniu AndroidaX.
- Upewnij się, że aktywność obejmuje ciąg
AppCompatActivity
:Kotlin
class MyActivity : AppCompatActivity() { // ... }
Java
public class MyActivity extends AppCompatActivity { // ... }
- W pliku manifestu aplikacji ustaw element
<application>
tak, aby używał jednego z motywówNoActionBar
w AppCompat, jak pokazano w poniższym przykładzie. Użycie jednego z tych motywów uniemożliwia aplikacji używanie natywnej klasyActionBar
do udostępnienia paska aplikacji.<application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
- Dodaj element
Toolbar
do układu aktywności. Na przykład ten kod układu dodaje obiektToolbar
, przez co nadaje mu wygląd unoszący 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"/>
Zapoznaj się ze specyfikacją Material Design, aby uzyskać zalecenia dotyczące wysokości paska aplikacji.
Umieść pasek narzędzi na górze układu aktywności, ponieważ używasz go jako paska aplikacji.
- W metodzie
onCreate()
aktywności wywołaj metodęsetSupportActionBar()
i przekaż pasek narzędzi aktywności, jak pokazano w przykładzie poniżej. 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); }
Aplikacja ma teraz podstawowy pasek działań. Domyślnie pasek działań zawiera nazwę aplikacji i rozszerzone menu, w którym początkowo znajduje się element Ustawienia. Do paska działań i rozszerzonego menu możesz dodać więcej działań, zgodnie z opisem w sekcji Dodawanie i obsługa działań.
Używanie metod narzędzia na pasku aplikacji
Po ustawieniu paska narzędzi jako paska aplikacji aktywności uzyskasz dostęp do metod narzędzia dostępnych w klasie ActionBar
biblioteki AndroidaX. Dzięki temu możesz wykonywać przydatne czynności, takie jak ukrywanie i wyświetlanie paska aplikacji.
Aby użyć metod narzędzia ActionBar
, wywołaj metodę getSupportActionBar()
aktywności. Ta metoda zwraca odwołanie do obiektu AppCompat ActionBar
.
Po uzyskaniu tego odwołania możesz wywołać dowolną z metod ActionBar
, aby dostosować pasek aplikacji. Aby na przykład ukryć pasek aplikacji, wywołaj ActionBar.hide()
.