Trascina e rilascia

  
Accettare i dati trascinati da un'altra app o all'interno di un'app e mostrare un'affordance del target di rilascio coerente.
Ultimo aggiornamento Release stabile Candidato per la release Versione beta Versione alpha
11 maggio 2022 1.0.0 - - -

Dichiarazione delle dipendenze

Per aggiungere una dipendenza da DragAndDrop, devi aggiungere il repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il repository Maven di Google.

Aggiungi le dipendenze per gli elementi necessari nel file build.gradle per la tua app o il tuo modulo:

Alla moda

dependencies {
    implementation "androidx.draganddrop:draganddrop:1.0.0"
}

Kotlin

dependencies {
    implementation("androidx.draganddrop:draganddrop:1.0.0")
}

Per ulteriori informazioni sulle dipendenze, consulta Aggiungere dipendenze di compilazione.

Feedback

Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se riscontri nuovi problemi o hai idee per migliorare questa raccolta. Prima di crearne uno nuovo, dai un'occhiata ai problemi esistenti in questa raccolta. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.

Creare un nuovo problema

Per ulteriori informazioni, consulta la documentazione del Tracker dei problemi.

Versione 1.0

Versione 1.0.0

11 maggio 2022

androidx.draganddrop:draganddrop:1.0.0 viene rilasciato. La versione 1.0.0 contiene questi commit.

Funzionalità principali della versione 1.0.0

DropHelper, il primo membro della libreria draganddrop, è una classe di utilità che semplifica l'implementazione delle funzionalità di trascinamento. Utilizza DropHelper per specificare i target di inserzione, personalizzare l'evidenziazione dei target di inserzione e definire la modalità di gestione dei dati inseriti.

  • DropHelper sfrutta OnReceiveContentListener di Jetpack per fornire un'elaborazione specifica per il target del trascinamento ClipData. DropHelper migliora l'esperienza utente configurando i target di rilascio in modo da visualizzare un'evidenziazione quando gli utenti trascinano i contenuti sopra i target. La classe nidificata DropHelper.Options ti consente di personalizzare l'aspetto dell'evidenziazione predefinita.
  • DropHelper associa un OnReceiveContentListener ai target di rilascio e li configura in modo che ascoltino gli eventi di trascinamento. Non aggiungere un OnDragListener o un altro OnReceiveContentListener per inserire i target quando utilizzi DropHelper.
  • DropHelper.Options ti consente di elencare tutti gli elementi EditText contenuti nella gerarchia delle visualizzazioni dei target di destinazione complessi. Se sono presenti, devono essere specificati in questo modo. DropHelper impedisce agli elementi EditText di rubare il focus dal target di rilascio quando gli utenti trascinano i dati sul target. Se l'elemento ClipData trascinato e rilasciato include dati di testo e URI, DropHelper seleziona uno degli elementi EditText nel target di rilascio per gestire i dati di testo quando viene rilasciato ClipData.

Per ulteriori informazioni, consulta la guida per gli sviluppatori relativa al trascinamento.

Versione 1.0.0-rc01

20 aprile 2022

androidx.draganddrop:draganddrop:1.0.0-rc01 viene rilasciato. La versione 1.0.0-rc01 contiene questi commit.

  • Nessuna modifica dall'ultima release beta.

Versione 1.0.0-beta01

23 marzo 2022

androidx.draganddrop:draganddrop:1.0.0-beta01 viene rilasciato. La versione 1.0.0-beta01 contiene questi commit.

  • Nessuna modifica dall'ultima release alpha.

Versione 1.0.0-alpha04

23 febbraio 2022

androidx.draganddrop:draganddrop:1.0.0-alpha04 viene rilasciato. La versione 1.0.0-alpha04 contiene questi commit.

Modifiche all'API

  • Gli eventi Drag con un valore localState non nullo non attiveranno l'evidenziazione per impostazione predefinita. Esiste un'opzione di configurazione per modificare questo comportamento. (I55792)

Versione 1.0.0-alpha03

26 gennaio 2022

androidx.draganddrop:draganddrop:1.0.0-alpha03 viene rilasciato. La versione 1.0.0-alpha03 contiene questi commit.

Nuove funzionalità

  • Sui dispositivi con Android S o versioni successive, DropHelper ora delega all'implementazione di sistema di OnReceiveContentListener, fornendo automaticamente il supporto per metodi di inserimento diversi dal trascinamento.

Versione 1.0.0-alpha02

15 dicembre 2021

androidx.draganddrop:draganddrop:1.0.0-alpha02 viene rilasciato. La versione 1.0.0-alpha02 contiene questi commit.

Funzionalità nella release iniziale

DropHelper, il primo membro della libreria draganddrop, è una classe di utilità che semplifica l'implementazione delle funzionalità di trascinamento. Utilizza DropHelper per specificare i target di inserzione, personalizzare l'evidenziazione dei target di inserzione e definire la modalità di gestione dei dati inseriti.

DropHelper sfrutta OnReceiveContentListener di Jetpack per fornire un'elaborazione specifica per il target del trascinamento ClipData. DropHelper migliora l'esperienza utente configurando i target di rilascio in modo da visualizzare un'evidenziazione quando gli utenti trascinano i contenuti sopra i target. La classe nidificata DropHelper.Options ti consente di personalizzare il colore e il raggio dei bordi dell'evidenziazione predefinita.

DropHelper.Options ti consente inoltre di elencare tutti gli elementi EditText contenuti nella gerarchia delle visualizzazioni dei target di destinazione complessi. DropHelper impedisce agli elementi EditText di rubare il focus dal target di rilascio quando gli utenti trascinano i dati sul target. Se l'elemento ClipData trascinato e rilasciato include dati di testo e URI, DropHelper seleziona uno degli elementi EditText nel target di rilascio per gestire i dati di testo quando viene rilasciato ClipData.

Per ulteriori informazioni, consulta la guida per gli sviluppatori relativa al trascinamento.