Attiva il trascinamento

Prova Compose
Jetpack Compose è il toolkit per la UI consigliato per Android. Scopri come utilizzare il trascinamento in Compose.

Il framework di trascinamento di Android ti consente di aggiungere funzionalità di trascinamento interattivo alla tua app. Con il trascinamento, gli utenti possono copiare o spostare testo, immagini, oggetti e qualsiasi contenuto che può essere rappresentato da un URI, da un View all'altro all'interno di un'app o tra app in modalità multi-finestra.

Stringa di testo e immagine trascinate all'interno di un'app. Stringa di testo e immagine trascinate tra le app in modalità schermo diviso.
Figura 1. Trascina e rilascia all'interno di un'app.
Figura 2. Trascinare e rilasciare contenuti tra le app.

Il framework include una classe di eventi di trascinamento, listener di trascinamento e classi e metodi helper. Sebbene sia progettato principalmente per consentire il trasferimento dei dati, puoi utilizzare il framework per altre azioni dell'interfaccia utente. Ad esempio, puoi creare un'app che mescola i colori quando l'utente trascina un'icona di colore sopra un'altra icona. Tuttavia, il resto del documento descrive il framework di trascinamento nel contesto del trasferimento dei dati.

Panoramica

Sono coinvolti alcuni elementi nel processo di trascinamento.

  1. Trascina origine: la visualizzazione del punto di partenza del processo di trascinamento.

  2. Destinazione di rilascio: una visualizzazione che può accettare i dati trascinati.

  3. Ombra di trascinamento: un'ombra di trascinamento è una rappresentazione dei dati trascinati, visibile agli utenti.

  4. Eventi di trascinamento: quando l'utente sposta l'ombra di trascinamento sul layout dell'app, il sistema invia gli eventi di trascinamento ai listener di eventi di trascinamento e ai metodi di callback associati agli oggetti View nel layout.

Un'operazione di trascinamento inizia quando l'utente esegue un gesto dell'interfaccia utente che la tua app riconosce come indicatore per iniziare a trascinare i dati. In risposta, l'app comunica al sistema che è in corso un'operazione di trascinamento. Il sistema richiama la tua app per ottenere un'ombra di trascinamento e mostrarla agli utenti durante il processo di trascinamento.

Man mano che l'utente sposta l'ombra di trascinamento sul layout dell'app, il sistema invia eventi di trascinamento ai listener di eventi di trascinamento e ai metodi di callback associati agli oggetti View nel layout. Se l'utente rilascia l'ombra di trascinamento su una destinazione di rilascio, il sistema invia i dati. L'operazione di trascinamento termina quando l'utente rilascia l'ombra del trascinamento, indipendentemente dal fatto che l'ombra del trascinamento si trovi o meno sopra una destinazione di rilascio.

Argomenti

Concetti fondamentali
Informazioni sulla procedura di trascinamento.
DropHelper per un trascinamento semplificato
Scopri come implementare il trascinamento con DropHelper.
Implementare il trascinamento con le visualizzazioni
In alternativa, implementa il trascinamento con le visualizzazioni Android, in modo che gli sviluppatori abbiano un maggiore controllo sui dettagli.
Trascina e rilascia in modalità multi-finestra
Supporta il trascinamento nella modalità multi-finestra, consentendo agli oggetti di spostarsi tra diverse applicazioni.

Risorse aggiuntive