In ihrer einfachsten Form zeigt die Aktionsleiste auf der einen Seite den Titel der Aktivität und auf der anderen ein Überlaufmenü an. Selbst in dieser einfachen Form bietet die App-Leiste nützliche Informationen für die Benutzer und trägt dazu bei, Android-Apps ein einheitliches Aussehen zu verleihen.

Abbildung 1. Eine App-Leiste mit dem App-Titel und dem Überlaufmenü.

Seit Android 3.0 (API-Level 11) haben alle Aktivitäten, die das Standardthema verwenden, eine ActionBar als App-Leiste. Allerdings wurden dem nativen ActionBar im Laufe der verschiedenen Android-Versionen nach und nach App-Bar-Funktionen hinzugefügt. Infolgedessen verhält sich die native ActionBar unterschiedlich, je nachdem, welche Version des Android-Systems ein Gerät verwendet. Im Gegensatz dazu werden die neuesten Funktionen der Version von Toolbar der Support-Bibliothek hinzugefügt und sind auf jedem Gerät verfügbar, das die Support-Bibliothek verwenden kann.

Aus diesem Grund sollten Sie die Klasse Toolbar der Support-Bibliothek verwenden, um die App-Leisten Ihrer Aktivitäten zu implementieren. Die Verwendung der Symbolleiste der Unterstützungsbibliothek trägt dazu bei, dass Ihre Anwendung ein konsistentes Verhalten auf einer Vielzahl von Geräten aufweist. Das Toolbar-Widget bietet beispielsweise ein Material-Design-Erlebnis auf Geräten mit Android 2.1 (API-Level 7) oder höher, aber die native Aktionsleiste unterstützt das Material-Design nur, wenn das Gerät mit Android 5.0 (API-Level 21) oder höher läuft.

Hinzufügen einer Symbolleiste zu einer Aktivität

Die folgenden Schritte beschreiben, wie Sie eine Toolbarals App-Leiste Ihrer Aktivität einrichten:

  1. Fügen Sie die v7 appcompat-Support-Bibliothek zu Ihrem Projekt hinzu, wie in Support Library Setup beschrieben.
  2. Stellen Sie sicher, dass die Aktivität AppCompatActivity erweitert:

    Kotlin

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

    Java

    public class MyActivity extends AppCompatActivity { // ...}

    Hinweis: Nehmen Sie diese Änderung für jede Aktivität in Ihrer Anwendung vor, die eine Toolbar als App-Leiste verwendet.

  3. Stellen Sie im App-Manifest das <application>-Element so ein, dass eines der NoActionBar-Themen von appcompat verwendet wird. Die Verwendung eines dieser Themen verhindert, dass die App die native ActionBar Klasse verwendet, um die App-Leiste bereitzustellen. Zum Beispiel:
    <application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
  4. Fügen Sie ein Toolbar zum Layout der Aktivität hinzu. Der folgende Layout-Code fügt beispielsweise ein Toolbar hinzu und verleiht ihm den Anschein, über der Aktivität zu schweben:
    <android.support.v7.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"/>

    Siehe die Material Design-Spezifikation für Empfehlungen zur Höhe der App-Leiste.

    Positionieren Sie die Symbolleiste oben im Layout der Aktivität, da Sie sie als Anwendungsleiste verwenden.

  5. Rufen Sie in der Methode onCreate() der Aktivität die Methode setSupportActionBar() der Aktivität auf und übergeben Sie die Symbolleiste der Aktivität. Diese Methode legt die Symbolleiste als Anwendungsleiste für die Aktivität fest. Zum Beispiel:

    Kotlin

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

    Java

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

Ihre App hat jetzt eine einfache Aktionsleiste. Standardmäßig enthält die Aktionsleiste nur den Namen der App und ein Überlaufmenü. Das Optionsmenü enthält zunächst nur den Eintrag Einstellungen. Sie können der Aktionsleiste und dem Überlaufmenü weitere Aktionen hinzufügen, wie in Hinzufügen und Behandeln von Aktionen beschrieben.

Dienstprogramm-Methoden der App-Leiste verwenden

Sobald Sie die Symbolleiste als App-Leiste einer Aktivität festgelegt haben, können Sie auf die verschiedenen Dienstprogramm-Methoden zugreifen, die von der Klasse ActionBar der Appcompat-Support-Bibliothek v7 bereitgestellt werden. Auf diese Weise können Sie eine Reihe nützlicher Dinge tun, wie das Ein- und Ausblenden der Anwendungsleiste.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.