În forma sa cea mai elementară, bara de acțiuni afișează titlul activității pe o parte și un meniu de depășire pe cealaltă parte. Chiar și în această formă simplă, bara de aplicații oferă informații utile utilizatorilor și ajută la conferirea unui aspect coerent al aplicațiilor Android.
Figura 1. O bară de aplicații cu titlul aplicației și meniul overflow.
Începând cu Android 3.0 (nivel API 11), toate activitățile care utilizează tema implicită au un ActionBar
ca bară de aplicații. Cu toate acestea, caracteristicile barei de aplicații au fost adăugate treptat la ActionBar
nativ de-a lungul diferitelor versiuni Android. Ca urmare, ActionBar
nativ se comportă diferit în funcție de versiunea sistemului Android pe care o poate utiliza un dispozitiv. În schimb, cele mai recente caracteristici sunt adăugate la versiunea Toolbar
a bibliotecii de suport și sunt disponibile pe orice dispozitiv care poate utiliza biblioteca de suport.
Din acest motiv, ar trebui să utilizați clasa Toolbar
a bibliotecii de suport pentru a implementa barele de aplicații ale activităților dumneavoastră. Utilizarea barei de instrumente a bibliotecii de suport ajută la asigurarea faptului că aplicația dvs. va avea un comportament consecvent pe o gamă cât mai largă de dispozitive. De exemplu, widgetul Toolbar
oferă o experiență material design pe dispozitivele care rulează Android 2.1 (nivel API 7) sau mai târziu, dar bara de activități nativă nu acceptă material design decât dacă dispozitivul rulează Android 5.0 (nivel API 21) sau o versiune ulterioară.
Adaugați o bară de instrumente la o activitate
Acești pași descriu cum să configurați un Toolbar
ca bară de aplicații a activității dumneavoastră:
- Adaugați biblioteca de asistență v7 appcompat la proiectul dumneavoastră, așa cum este descris în Configurarea bibliotecii de asistență.
- În manifestul aplicației, setați elementul
<application>
pentru a utiliza una dintre temeleNoActionBar
de la appcompat. Folosirea uneia dintre aceste teme împiedică aplicația să folosească clasa nativăActionBar
pentru a furniza bara de aplicații. De exemplu:<application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
- Adaugați un
Toolbar
la aspectul activității. De exemplu, următorul cod de aspect adaugă unToolbar
și îi conferă aspectul de a pluti deasupra activității:<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"/>
Consultați specificația Material Design pentru recomandări privind înălțarea barei de aplicații.
Poziționați bara de instrumente în partea de sus a aspectului activității, deoarece o utilizați ca bară de aplicații.
- În metoda
onCreate()
a activității, apelați metodasetSupportActionBar()
a activității și treceți bara de instrumente a activității. Această metodă setează bara de instrumente ca bară de aplicații pentru activitate. De exemplu: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);}
Asigurați-vă că activitatea extinde AppCompatActivity
:
Kotlin
class MyActivity : AppCompatActivity() { // ...}
Java
public class MyActivity extends AppCompatActivity { // ...}
Notă: Efectuați această modificare pentru fiecare activitate din aplicația dumneavoastră care utilizează un Toolbar
ca bară de aplicații.
Aplicația dumneavoastră are acum o bară de acțiune de bază. În mod implicit, bara de acțiune conține doar numele aplicației și un meniu de depășire. Meniul de opțiuni conține inițial doar elementul Settings (Setări). Puteți adăuga mai multe acțiuni la bara de acțiuni și la meniul de revărsare, așa cum este descris în Adăugarea și gestionarea acțiunilor.
Utilizarea metodelor utilitare ale barei de aplicații
Odată ce ați setat bara de instrumente ca bară de aplicații a unei activități, aveți acces la diversele metode utilitare furnizate de clasa ActionBar
a bibliotecii de suport appcompat v7. Această abordare vă permite să faceți o serie de lucruri utile, cum ar fi ascunderea și afișarea barei de aplicații.