La barra di stato, la barra del titolo e la barra di navigazione sono le barre di sistema. Mostrano informazioni importanti come il livello batteria, l'ora e gli avvisi di notifica e consentono l'interazione diretta con il dispositivo da qualsiasi luogo.
Tieni sempre conto della presenza e della visibilità delle barre di sistema, sia che tu stia progettando layout, metodi di immissione o altre funzionalità del dispositivo.
Competenze Android
Visualizza su GitHubAggiungi il supporto edge-to-edge
android skills add edge-to-edge
Concetti principali
Includi le barre di sistema nei layout per schermi di diverse dimensioni e fattori di forma. Tieni conto delle zone sicure della UI, delle interazioni di sistema, dei metodi di immissione, dei ritagli del display, delle barre di stato, delle barre dei sottotitoli, delle barre di navigazione e di altre funzionalità del dispositivo.
Mantieni le barre di stato e di navigazione del sistema trasparenti o semitrasparenti e disegna i contenuti dietro queste barre per visualizzarli edge-to-edge.
Utilizza
WindowInsetsper gestire correttamente le intrusioni della barra di sistema e assicurarti che i tuoi contenuti non siano oscurati nei layout adattivi.Utilizza i layout canonici, che sfruttano lo spazio sullo schermo in modo efficiente.
Barra di stato
La barra di stato contiene icone di notifica e icone di sistema. L'utente interagisce con la barra di stato trascinandola verso il basso per accedere all'area notifiche. Gli stili della barra di stato possono essere trasparenti o semitrasparenti.
Icone della barra di stato
Le icone della barra di stato possono apparire in modo diverso a seconda del contesto, dell'ora del giorno, delle preferenze o dei temi impostati dall'utente e di altri parametri. Per ulteriori informazioni, consulta Icone della barra di sistema.
Quando arriva una notifica, di solito viene visualizzata un'icona nella barra di stato. In questo modo, l'utente capisce che c'è qualcosa da vedere nel riquadro a scomparsa delle notifiche. Può essere l'icona o il simbolo della tua app per rappresentare il canale. Consulta la sezione Design delle notifiche.
Imposta lo stile della barra di stato
Rendi la barra di stato trasparente o semitrasparente per assicurarti che i contenuti dell'app occupino l'intero schermo. Poi, imposta lo stile delle icone della barra di sistema in modo che abbiano un contrasto adeguato.
La modalità edge-to-edge è applicata su Android 15, rendendo la barra di stato trasparente per impostazione predefinita. Chiama enableEdgeToEdge() per la compatibilità con le versioni precedenti.
Nell'immagine a sinistra di seguito, la barra di stato è trasparente e lo sfondo verde di TopAppBar viene disegnato dietro la barra di stato.
Le barre di stato trasparenti sono ideali quando la UI non viene visualizzata sotto la barra di stato o un'immagine viene disegnata sotto la barra di stato. Le barre di stato traslucide sono ideali quando la UI scorre sotto la barra di stato. Per saperne di più sulla protezione dei gradienti, consulta Design edge-to-edge.
Navigazione
Android consente agli utenti di controllare la navigazione utilizzando i controlli Indietro, Home e Panoramica:
- Indietro: torna alla visualizzazione precedente.
- Home: esce dall'app e torna alla schermata Home del dispositivo.
- La schermata Panoramica mostra le app attive e le app recenti non ignorate.
Gli utenti possono scegliere tra varie configurazioni di navigazione, tra cui la navigazione tramite gesti e la navigazione adattiva. Per offrire un'esperienza utente ottimale, tieni conto di più tipi di navigazione.
Navigazione tramite gesti
La navigazione tramite gesti non utilizza i pulsanti Indietro, Home e Panoramica, ma mostra un unico handle dei gesti per l'affordance. Gli utenti interagiscono scorrendo dal bordo sinistro o destro dello schermo per tornare indietro e dal basso verso l'alto per tornare alla schermata Home. Scorrendo verso l'alto e tenendo premuto si apre la panoramica.
La navigazione tramite gesti è un pattern di navigazione più scalabile per la progettazione su dispositivi mobili e schermi più grandi. Per offrire la migliore esperienza utente, tieni conto della navigazione tramite gesti seguendo questi passaggi:
- Supporto dei contenuti edge-to-edge.
- Evita di aggiungere interazioni o target di tocco sotto gli inserti di navigazione tramite gesti.
Per saperne di più, consulta Aggiungi il supporto per la navigazione tramite gesti.
Navigazione adattiva
Un altro pattern di navigazione comune su Android è il passaggio da una barra di navigazione laterale a una barra di navigazione a seconda della classe di dimensioni della finestra del display. I componenti di navigazione adattiva di Jetpack Compose gestiscono più fattori di forma, impedendo al contempo alle barre di sistema di interferire con il layout dei componenti di navigazione.
Nei layout adattivi, considera come le barre di sistema potrebbero comportarsi o avere uno stile diverso in vari contesti, ad esempio dimensioni delle finestre compatte o espanse o diverse posizioni dei pieghevoli.
Per saperne di più, consulta Crea una navigazione adattiva.
Icone di navigazione
Anche le icone di navigazione possono apparire in modo diverso a seconda delle preferenze o dei temi impostati dall'utente. Per ulteriori informazioni, consulta Icone della barra di sistema.
Imposta uno stile di navigazione
Android gestisce la protezione visiva dell'interfaccia utente nella modalità di navigazione tramite gesti e nelle modalità dei pulsanti. Il sistema applica l'adattamento dinamico dei colori, in cui i contenuti delle barre di sistema cambiano colore in base ai contenuti dietro di loro.
Modalità di navigazione tramite gesti
Dopo aver scelto come target Android 15 o aver chiamato enableEdgeToEdge su Activity, il sistema disegna una barra di navigazione tramite gesti trasparente e applica l'adattamento dinamico dei colori. Nell'esempio seguente, l'handle nella barra di navigazione diventa di colore scuro se viene posizionato sopra contenuti chiari e viceversa.
Le barre di navigazione tramite gesti trasparenti sono sempre consigliate.
Cosa fare
Cosa non fare
Modalità dei pulsanti
Dopo aver scelto Android 15 come target o aver chiamato enableEdgeToEdge su Activity, il sistema applica uno scrim traslucido dietro le barre di navigazione con pulsanti, che puoi rimuovere impostando Window.setNavigationBarContrastEnforced() su false.
Utilizza barre di navigazione a tre pulsanti trasparenti quando è presente una barra delle app in basso o una barra di navigazione delle app in basso oppure quando la UI non scorre sotto la barra di navigazione a tre pulsanti. Per ottenere una barra di navigazione trasparente, imposta
Window.setNavigationBarContrastEnforced() su false e aggiungi spaziatura interna alle barre delle app in basso per
disegnare sotto le barre di navigazione di sistema, come mostrato nelle figure 7, 8 e 9. Per saperne di più, consulta Protezione della barra di sistema.
Utilizza una barra di navigazione a tre pulsanti traslucida per scorrere i contenuti. Per ulteriori informazioni sulle considerazioni relative alla barra di navigazione traslucida, consulta Design edge-to-edge.
Tastiera e navigazione
Ogni tipo di navigazione reagisce in modo appropriato alla tastiera sullo schermo per consentire all'utente di eseguire azioni come chiudere o persino modificare il tipo di tastiera. Per garantire una transizione fluida che sincronizzi la transizione dell'app con lo scorrimento della tastiera verso l'alto e verso il basso dalla parte inferiore dello schermo, utilizza WindowInsetsAnimationCompat.
Layout
I layout adattivi ottimizzano lo spazio di visualizzazione disponibile. Organizzano la UI dell'app spostando i contenuti in riquadri secondari o terziari.
Quando progetti layout adattivi, considera il modo in cui le barre di sistema interagiscono con i tuoi contenuti. Utilizza WindowInsets per assicurarti che la UI non sia oscurata dalle barre di sistema su display come schermi di grandi dimensioni, pieghevoli e finestre delle app in modalità multi-finestra e finestre delle app.
Quando l'app viene visualizzata edge-to-edge, verifica che i contenuti e i controlli non siano oscurati dalla UI di sistema. Se, ad esempio, la barra di navigazione copre un pulsante, l'utente potrebbe non essere in grado di fare clic sul pulsante.
Per ulteriori informazioni, consulta la sezione Layout canonici.
Ritaglio display
Un ritaglio display è un'area su alcuni dispositivi che si estende nella superficie del display per fornire spazio ai sensori anteriori. I ritagli display possono variare a seconda del produttore. Considera l'interazione dei ritagli display con i contenuti, l'orientamento e la modalità edge-to-edge.
Modalità immersiva
Puoi nascondere le barre di sistema quando hai bisogno di un'esperienza a schermo intero, ad esempio quando l'utente guarda un film. L'utente deve comunque essere in grado di toccare per visualizzare le barre di sistema e navigare o interagire con i controlli di sistema. Per saperne di più, consulta Contenuti immersivi e Nascondi le barre di sistema per la modalità immersiva.