W najbardziej podstawowej formie pasek działań zawiera tytuł aktywności po jednej stronie, a rozszerzone menu po drugiej. Nawet w tej podstawowej formie pasek aplikacji zawiera przydatne informacje dla użytkowników i nadaje aplikacjom na Androida spójny wygląd i styl.
Wszystkie aktywności, które używają motywu domyślnego, mają na pasku aplikacji znak ActionBar
. Funkcje paska aplikacji są dodawane do natywnego elementu ActionBar
w różnych wersjach Androida. W efekcie natywna ActionBar
działa różnie w zależności od wersji Androida, z której korzysta urządzenie.
Z drugiej strony funkcje są dodawane do wersji Toolbar
biblioteki AndroidX AppCompat, co oznacza, że są one dostępne na urządzeniach z bibliotekami AndroidX.
Użyj klasy Toolbar
biblioteki AndroidX do zaimplementowania pasków aplikacji aktywności. Korzystanie z paska narzędzi biblioteki AndroidX sprawia, że działanie aplikacji jest spójne na jak największej liczbie urządzeń.
Dodawanie paska narzędzi do aktywności
Aby skonfigurowaćToolbar
jako pasek aplikacji aktywności:- Dodaj do projektu bibliotekę AndroidX zgodnie z opisem w omówieniu AndroidaX.
- Upewnij się, że aktywność obejmuje
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
usługi AppCompat, jak pokazano w poniższym przykładzie. Użycie jednego z tych motywów uniemożliwia aplikacji użycie natywnej klasyActionBar
do wyświetlania paska aplikacji.<application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
- Dodaj
Toolbar
do układu aktywności. Na przykład ten kod układu dodaje elementToolbar
i 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"/>
Zalecenia dotyczące wysokości paska aplikacji znajdziesz w specyfikacji Material Design.
Umieść pasek narzędzi na górze układu aktywności, ponieważ używasz go jako paska aplikacji.
- W metodzie
onCreate()
działania wywołaj metodęsetSupportActionBar()
i przekaż pasek narzędzi aktywności, jak pokazano w poniższym 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); }
Aplikacja zawiera teraz podstawowy pasek działań. Domyślnie pasek działań zawiera nazwę aplikacji oraz rozszerzone menu, które początkowo zawiera element Ustawienia. Do paska działań i rozszerzonego menu możesz dodać więcej działań, zgodnie z opisem w sekcji Dodawanie działań i ich obsługa.
Używanie metod narzędziowych paska aplikacji
Gdy ustawisz pasek narzędzi jako pasek aplikacji aktywności, będziesz mieć dostęp do metod narzędzi dostępnych przez klasę ActionBar
w bibliotece AndroidX. Dzięki temu możesz wykonywać przydatne czynności, takie jak ukrywanie i wyświetlanie paska aplikacji.
Aby użyć metod narzędziowych ActionBar
, wywołaj metodę getSupportActionBar()
aktywności. Ta metoda zwraca odwołanie do obiektu AppCompat ActionBar
.
Mając to odniesienie, możesz wywołać dowolną metodę ActionBar
, aby dostosować pasek aplikacji. Aby na przykład ukryć pasek aplikacji, wywołaj ActionBar.hide()
.