Scopri di più sui pieghevoli

I dispositivi pieghevoli offrono un'opportunità per lo sviluppo innovativo delle app. Gli schermi grandi e piccoli dello stesso dispositivo offrono esperienze interattive complementari ma distinte. Le funzionalità di piegatura come la postura da tavolo e la postura del libro consentono layout fantasiosi e interfacce utente non convenzionali.

Figura 1. Dispositivo pieghevole in più posizioni: piegato, aperto, piatto, aperto in posizione orizzontale e mezzo aperto (piano di appoggio).

Design adattabile/adattivo

Il supporto per i dispositivi pieghevoli inizia dal design reattivo. I layout adattabili consentono a un'app di avere un aspetto e un funzionamento ottimali su diverse dimensioni di display, inclusi gli schermi piegati e aperti di un dispositivo pieghevole. Per i layout basati sulle visualizzazioni, implementa il design adattabile con ConstraintLayout; per Compose, BoxWithConstraints.

A volte però il layout deve adattarsi. Le differenze nelle dimensioni e nelle proporzioni degli schermi piegati e aperti possono essere molto grandi e neanche un layout reattivo è in grado di soddisfare in modo ottimale entrambi i display. Il design adattivo crea layout alternativi ottimizzati per dimensioni dello schermo e configurazioni diverse. I layout adattivi offrono un'esperienza utente ottimizzata quando un dispositivo pieghevole è piegato o aperto, con orientamento verticale o orizzontale, in posizione da tavolo o a libro.

Ad esempio, un dispositivo pieghevole di grandi dimensioni aperto con orientamento orizzontale è simile a un tablet; un layout a due riquadri con binario di navigazione sfrutta in modo eccellente l'ampio schermo. Chiuso, il dispositivo è simile a uno smartphone standard; la struttura a colonna singola con la barra di navigazione in basso è semplice ma efficace. Poiché i layout sono separati, puoi ottimizzare ciascuno di essi per il suo caso d'uso specifico.

Figura 2. Layout adattivi ottimizzati per schermi piegati e aperti.

I dispositivi pieghevoli si piegano in diversi modi, ad esempio verso l'interno, con il display ripiegato all'interno o verso l'esterno e il display avvolge il dispositivo. Il design adattabile/adattivo prepara la tua app a supportare tutti i tipi di fattori di forma pieghevoli.

Per scoprire di più sul design adattabile/adattivo per i pieghevoli, consulta le seguenti risorse:

Stati e posizioni pieghevoli

La piegatura di un dispositivo pieghevole divide lo schermo in due parti. Il pieghevole può essere un'area flessibile dello schermo o, nei dispositivi con doppio schermo, una cerniera che separa i due display.

Il fold ha una dimensione e una proprietà occlusionType, che definisce se il fold nasconde parte del display. Sui dispositivi con doppio schermo, l'occlusionType è FULL, nessun contenuto è visibile nell'area di piegatura (cerniera) anche se un'app può estendersi su entrambi gli schermi.

I dispositivi pieghevoli possono essere in vari stati piegati, ad esempio FLAT (completamente aperto) o HALF_OPENED (un po' da un punto di un'area compresa tra completamente aperto e completamente chiuso).

Figura 3. Dispositivo pieghevole in stato piatto e semiaperto.

Quando un dispositivo è nello stato HALF_OPENED, sono possibili due posizioni, a seconda dell'orientamento della piegatura: da tavolo (piega orizzontale) e posizione a libro (piega verticale).

Le posizioni di tabella e libri offrono nuove possibilità di layout, ma lo stato del dispositivo HALF_OPENED impone anche alcune limitazioni. Ad esempio, l'accesso da parte degli utenti ai controlli dell'UI vicino al fold può essere difficile e il testo sovrapposto al fold può essere difficile da leggere (o illeggibile se occlusionType è FULL).

Progetta i layout in modo che gli elementi UI siano accessibili in tutti gli stati del dispositivo. Posiziona le finestre di dialogo e i menu popup in modo che non si sovrappongano. Assicurati che i contenuti importanti siano visibili quando il dispositivo è parzialmente chiuso. Dividi i contenuti in due aree quando il dispositivo è mezzo aperto: in alto e in basso nella posizione da tavolo, a sinistra e a destra in posizione a libro.

Per ulteriori informazioni su pieghe e posizioni pieghevoli, vedi Rendere l'app pieghevole.

Continuità dell'app

Un'app si interrompe e si riavvia mentre passa da una schermata all'altra quando un dispositivo si piega o si apre. Per mantenere la continuità per l'utente, l'app deve ripristinare il suo stato quando ricrea il layout dell'app su uno schermo piegato o aperto. Ad esempio, le app devono:

  • Mantieni il testo digitato nei campi di immissione
  • Ripristina lo stato della tastiera
  • Ripristina la posizione di scorrimento dei campi scorrevoli
  • Riprendi la riproduzione dei contenuti multimediali dal punto in cui si era interrotta quando l'app era stata interrotta

Anche i diversi layout dello schermo di un dispositivo pieghevole dovrebbero essere complementari. Ad esempio, se lo schermo piegato mostra un'immagine e una descrizione di un prodotto di un negozio online, lo schermo aperto dovrebbe mantenere la continuità mostrando la stessa immagine e descrizione, ma includere anche contenuti complementari come specifiche o recensioni dei prodotti.

Per scoprire di più sulla gestione dello stato e della continuità delle app, vedi Salvare gli stati della UI e Gestire le modifiche alla configurazione.

Multitasking

Gli schermi pieghevoli di grandi dimensioni hanno uno schermo delle dimensioni di un tablet ideale per il multitasking in modalità multi-finestra. I dispositivi pieghevoli supportano la modalità schermo diviso; alcuni supportano persino la modalità in formato libero, in cui le app sono contenute in finestre mobili e ridimensionabili, come in un sistema di finestre desktop.

Figura 4. Dispositivo pieghevole in orientamento orizzontale che esegue tre app in modalità schermo diviso (sinistra) e in modalità formato libero (destra).

Per Android 12 (livello API 31) e versioni successive è impostata la modalità multi-finestra per impostazione predefinita: sugli schermi più grandi, tutte le app vengono eseguite in modalità multi-finestra, indipendentemente dalla configurazione. Nelle versioni precedenti fino ad Android 7.0 (livello API 24), devi configurare l'app in modo che sia ridimensionabile per supportare la modalità multi-finestra.

Per informazioni sul multitasking in modalità multi-finestra, consulta l'articolo sul supporto della funzionalità multi-finestra.

Trascina

I dispositivi pieghevoli di grandi dimensioni sullo schermo offrono un ampio spazio sullo schermo per le interazioni tramite trascinamento. La modalità multi-finestra dei dispositivi pieghevoli consente di trascinare un'app da un'app all'altra.

Le interazioni con trascinamento creano un'esperienza utente produttiva e coinvolgente. Aggiungi funzionalità di trascinamento alla tua app usando il framework di trascinamento di Android. Per ulteriori informazioni, vedi Trascinamento.

Risorse aggiuntive