I sin mest grundlæggende form viser aktionslinjen titlen for aktiviteten på den ene side og en overløbsmenu på den anden side. Selv i denne enkle form giver app-linjen nyttige oplysninger til brugerne og er med til at give Android-apps et ensartet udseende.
Figur 1. En app-linje med apptitle og overløbsmenu.
Fra og med Android 3.0 (API-niveau 11) har alle aktiviteter, der bruger standardtemaet, en ActionBar
som app-linje. App-bar-funktioner er dog gradvist blevet tilføjet til den native ActionBar
i løbet af forskellige Android-udgaver. Som følge heraf opfører den native ActionBar
sig forskelligt afhængigt af, hvilken version af Android-systemet en enhed måtte anvende. Derimod er de nyeste funktioner tilføjet til supportbibliotekets version af Toolbar
, og de er tilgængelige på alle enheder, der kan bruge supportbiblioteket.
Af denne grund bør du bruge supportbibliotekets Toolbar
-klasse Toolbar
til at implementere dine aktiviteters app-barer. Ved at bruge supportbibliotekets værktøjslinje er du med til at sikre, at din app vil have en ensartet opførsel på tværs af det bredeste udvalg af enheder. For eksempel giver Toolbar
-widgetten en material design-oplevelse på enheder, der kører Android 2.1 (API-niveau 7) eller nyere, men den native aktivitetslinje understøtter ikke material design, medmindre enheden kører Android 5.0 (API-niveau 21) eller nyere.
Føj en værktøjslinje til en aktivitet
Disse trin beskriver, hvordan du konfigurerer en Toolbar
som din aktivitets appbar:
- Føj v7 appcompat-støttebiblioteket til dit projekt, som beskrevet i Opsætning af støttebibliotek.
- Sørg for, at aktiviteten udvider
AppCompatActivity
:Kotlin
class MyActivity : AppCompatActivity() { // ...}
Java
public class MyActivity extends AppCompatActivity { // ...}
Bemærk: Foretag denne ændring for hver aktivitet i din app, der bruger en
Toolbar
som app-bar. - Ind i appmanifestet skal du indstille
<application>
-elementet til at bruge et af appcompatsNoActionBar
temaer. Hvis du bruger et af disse temaer, forhindrer du appen i at bruge den nativeActionBar
-klasse til at levere app-baren. F.eks:<application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
- Tilføj et
Toolbar
til aktivitetens layout. Følgende layoutkode tilføjer f.eks. enToolbar
og giver den udseendet af at svæve over aktiviteten:<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"/>
Se Material Design-specifikationen for anbefalinger vedrørende app-barens højde.
Placér værktøjslinjen øverst i aktivitetens layout, da du bruger den som en app-linje.
- I aktivitetens
onCreate()
-metode kalder du aktivitetenssetSupportActionBar()
-metode, og du overgiver aktivitetens værktøjslinje. Denne metode indstiller værktøjslinjen som app-linjen for aktiviteten. For eksempel: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);}
Din app har nu en grundlæggende aktionslinje. Som standard indeholder aktionslinjen kun navnet på appen og en overløbsmenu. Indstillingsmenuen indeholder i første omgang kun punktet Indstillinger. Du kan tilføje flere handlinger til aktionslinjen og overløbsmenuen som beskrevet i Tilføjelse og håndtering af handlinger.
Brug værktøjsmetoder for appbar
Når du har indstillet værktøjslinjen som en aktivitets appbar, har du adgang til de forskellige værktøjsmetoder, der leveres af klassen ActionBar
i v7 appcompat-supportbibliotekets ActionBar
-klasse. Med denne fremgangsmåde kan du gøre en række nyttige ting, f.eks. skjule og vise app-linjen.