Configura 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 uniformi 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 della tua 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 la spaziatura interna 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 gli inset utilizzando righelli, modificatori di spaziatura interna o modificatori di dimensioni degli inset. 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.