Configurare la visualizzazione edge-to-edge

Per consentire alla tua app il controllo completo della posizione in cui disegna i contenuti, segui questi passaggi di configurazione. Senza questi passaggi, l'app potrebbe disegnare colori neri o pieni dietro l'interfaccia utente di sistema o non animarsi in modo sincrono con la tastiera software.

  1. Scegli come target Android 15 (livello API 35) o versioni successive per applicare la visualizzazione edge-to-edge su Android 15 e versioni successive. La tua app viene visualizzata dietro l'interfaccia utente di sistema. Puoi regolare l'interfaccia utente dell'app gestendo gli inset.
  2. Facoltativamente, chiama enableEdgeToEdge() in Activity.onCreate(), che consente alla tua app di essere edge-to-edge nelle versioni precedenti di Android.
  3. Imposta android:windowSoftInputMode="adjustResize" nella voce AndroidManifest.xml della tua attività. Questa impostazione consente all'app di ricevere le dimensioni dell'IME software come margini interni, il che ti aiuta ad applicare il layout e il padding appropriati quando l'IME viene visualizzato e scompare nell'app.

    <!-- In your AndroidManifest.xml file: -->
    <activity
      android:name=".ui.MainActivity"
      android:label="@string/app_name"
      android:windowSoftInputMode="adjustResize"
      android:theme="@style/Theme.MyApplication"
      android:exported="true">
    
  4. Gestisci gli inset in modo che la tua UI critica non si sovrapponga alle barre di sistema o al ritaglio del display. Puoi gestire i rientri utilizzando righelli, modificatori di spaziatura interna o modificatori di dimensione del rientro. Alcuni componenti Material gestiscono automaticamente gli inset o hanno parametri per facilitare la gestione degli inset, come il parametro PaddingValues di Scaffold. Scegli un approccio di gestione degli inserti. Ad esempio, utilizza Scaffold, Modifier.safeDrawingPadding() o Modifier.fitInside(WindowInsetsRulers.SafeDrawing.current), poiché questi approcci sono spesso intercambiabili.