Vereinfachen Sie Drag-and-Drop. Heute präsentieren wir DropHelper in… | von Paul Lammertsma Android-Entwickler Dezember 2021

Paul Lammertsma

Auf der grundlegendsten Ebene, ziehen und ablegen ist eine Bewegung, bei der der Benutzer ein Bild, eine Textzeichenfolge oder ein anderes Datenelement berühren und halten, es dann in eine andere Anwendung (oder an eine andere Stelle in derselben Anwendung) ziehen und loslassen kann, wo die Daten an einer neuen Stelle eingebettet werden. Diese Bewegung ist normalerweise ein langes Drücken auf den Touch- oder Klickbildschirmen und Ziehen und Ablegen bei Verwendung der Maus.

Einfaches Drag & Drop-Muster.

Obwohl Android Drag & Drop seit langem unterstützt (DragEvent wurde in Android 3.0, API-Level 11 eingeführt), erwies sich die Integration der vollständigen Unterstützung für die Handhabung von Gesten, Ereignissen, Berechtigungen und Rückrufen als komplex.

Wischen und Ablegen wird für die Formfaktoren großer Bildschirme immer relevanter: Tablets und Laptops, aber insbesondere zusammenklappbare, bei denen ein geteilter Bildschirm verwendet wird 7 mal öfter als bei herkömmlichen Telefonen. Die Möglichkeit, Daten von einer Anwendung in eine andere zu ziehen, ist eine natürliche Erfahrung für Benutzer, da sie mit ihren Anwendungen mehrere Aufgaben effizienter ausführen können geteilter Bildschirm oder Fenstermodus.

Beim Ziehen von Text aus EditTexts ursprünglich von der Plattform unterstützt wird, empfehlen wir dringend, dass Sie Benutzern erlauben, Bilder, Dateien oder Text aus anderen Komponenten Ihrer Anwendung zu ziehen. Ebenso wichtig ist, dass wir Sie ermutigen, Benutzern auch das Einfügen von Daten in Ihre Anwendungen zu erlauben.

Ziehen Sie von einer App in eine andere.

DropHelperkombiniert mit DragStartHelpererleichtert die Pflege von Bewegungsunterstützung, Rückrufen, Stil und perfekter Pixelausrichtung erheblich.

DragStartHelper

DragStartHelper ist eine Dienstprogrammklasse im Jetpack-Kern, die Bewegungen erkennt, die häufig zum Starten eines Ziehens verwendet werden, z. B. langes Drücken oder Klicken und Ziehen.

DropHelper

Neu DropHelper ist eine Serviceklasse, die sich um Zuhörer kümmert und Ziele ablehnt. Unbedingt verwenden addInnerEditTexts() während der Konstruktion DropHelper.Options um sicherzustellen, dass alle verschachtelt EditTexts innerhalb Ihres Zielsturzes gewinnen Sie stattdessen nicht den Fokus.

Mehr erfahren

Lesen Sie mehr in Ziehen Sie den Leitfaden per Drag-and-Drop zu Android-Entwicklerneintauchen großer Beispielbildschirm um zu sehen DropHelper in der Praxis, dann versuchen Sie es jetzt in der Alpha-Version Geben Sie uns eine Rückmeldung.

Danke für Florina, Ben ich Nick!!