Nella sua forma più elementare, la barra delle azioni mostra il titolo dell’attività su un lato e un menu di overflow sull’altro. Anche in questa forma semplice, l’app bar fornisce informazioni utili agli utenti, e aiuta a dare alle applicazioni Android un look and feel coerente.

Figura 1. Un’app bar con l’apptitle e il menu overflow.

A partire da Android 3.0 (livello API 11), tutte le attività che utilizzano il tema predefinito hanno un ActionBar come app bar. Tuttavia, le caratteristiche delle app bar sono state gradualmente aggiunte al ActionBar nativo nel corso delle varie versioni di Android. Di conseguenza, il ActionBar nativo si comporta in modo diverso a seconda della versione del sistema Android che un dispositivo sta utilizzando. Al contrario, le caratteristiche più recenti sono aggiunte alla versione della libreria di supporto di Toolbar, e sono disponibili su qualsiasi dispositivo che può usare la libreria di supporto.

Per questo motivo, dovresti usare la classe Toolbar della libreria di supporto per implementare le barre delle tue attività. Usare la barra della libreria di supporto aiuta a garantire che la tua app abbia un comportamento coerente attraverso la più ampia gamma di dispositivi. Per esempio, il widget Toolbar fornisce un’esperienza di material design sui dispositivi con Android 2.1 (livello API 7) o successivi, ma la barra delle azioni nativa non supporta il material design a meno che il dispositivo non abbia Android 5.0 (livello API 21) o successivo.

Aggiungi una barra degli strumenti a un’attività

Questi passi descrivono come impostare una Toolbarcome barra delle applicazioni della tua attività:

  1. Aggiungi la libreria di supporto v7 appcompat al tuo progetto, come descritto in Impostazione della libreria di supporto.
  2. Assicurati che l’attività estenda AppCompatActivity:

    Kotlin

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

    Java

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

    Nota: Fai questa modifica per ogni attività nella tua app che usa un Toolbar come app bar.

  3. Nel manifesto dell’app, imposta l’elemento <application> per usare uno dei temi NoActionBar di appcompat. L’uso di uno di questi temi impedisce all’app di usare la classe nativa ActionBar per fornire l’app bar. Per esempio:
    <application android:theme="@style/Theme.AppCompat.Light.NoActionBar" />
  4. Aggiungi un Toolbar al layout dell’attività. Per esempio, il seguente codice di layout aggiunge un Toolbar e gli dà l’aspetto di galleggiare sopra l’attività:
    <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"/>

    Vedi la specifica Material Design per le raccomandazioni riguardanti l’elevazione della barra delle app.

    Posiziona la barra degli strumenti nella parte superiore del layout dell’attività, dato che la stai usando come app bar.

  5. Nel metodo onCreate() dell’attività, chiama il metodo setSupportActionBar() dell’attività e passa la barra degli strumenti dell’attività. Questo metodo imposta la barra degli strumenti come barra dell’applicazione per l’attività. Per esempio:

    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);}

La tua app ha ora una barra delle azioni di base. Per impostazione predefinita, la barra d’azione contiene solo il nome dell’applicazione e un menu di overflow. Il menu delle opzioni inizialmente contiene solo la voce Settings. Puoi aggiungere altre azioni alla barra delle azioni e al menu di overflow, come descritto in Aggiungere e gestire le azioni.

Utilizzare i metodi di utilità della barra delle applicazioni

Una volta che hai impostato la barra degli strumenti come barra delle applicazioni di un’attività, hai accesso ai vari metodi di utilità forniti dalla classe ActionBar della libreria di supporto appcompat v7. Questo approccio ti permette di fare una serie di cose utili, come nascondere e mostrare l’app bar.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.