Włącz przeciąganie i upuszczanie

Wypróbuj metodę Compose
Jetpack Compose to zalecany zestaw narzędzi interfejsu na Androida. Dowiedz się, jak używać przeciągania i upuszczania w Compose.

Platforma przeciągania i upuszczania w Androidzie umożliwia dodawanie do aplikacji interaktywnych funkcji przeciągania i upuszczania. Dzięki tej funkcji użytkownicy mogą kopiować lub przenosić tekst, obrazy, obiekty i wszelkie treści, które można przedstawić za pomocą identyfikatora URI, z jednego View do drugiego miejsca w aplikacji lub między aplikacjami w trybie wielu okien.

Ciąg tekstowy i obraz przeciągane i upuszczane w aplikacji. Ciąg tekstu i obraz przeciągane i upuszczane między aplikacjami w trybie podzielonego ekranu.
Rysunek 1. Przeciąganie i upuszczanie w aplikacji.
Rysunek 2. Przeciąganie i upuszczanie między aplikacjami.

Framework zawiera klasę zdarzenia przeciągnięcia, detektory przeciągnięcia oraz klasy i metody pomocnicze. Chociaż ten interfejs został zaprojektowany głównie z myślą o przenoszeniu danych, możesz go używać do innych działań w interfejsie. Możesz na przykład utworzyć aplikację, która miesza kolory, gdy użytkownik przeciągnie ikonę koloru na inną ikonę. Jednak w pozostałej części dokumentu opisujemy framework przeciągnij i upuść w kontekście przenoszenia danych.

Przegląd

Proces przeciągania obejmuje kilka elementów.

  1. Przeciągnij źródło: widok punktu początkowego procesu przeciągania i upuszczania.

  2. Miejsce docelowe: widok, który może zaakceptować przeciągane dane.

  3. Cień przeciągania: cień przeciągania to reprezentacja przeciąganych danych, która jest widoczna dla użytkowników.

  4. Zdarzenia przeciągania: gdy użytkownik przesuwa cień przeciągania po układzie aplikacji, system wysyła zdarzenia przeciągania do odbiorników zdarzeń przeciągania i metod wywołania zwrotnego powiązanych z obiektami View w układzie.

Operacja przeciągania i upuszczania rozpoczyna się, gdy użytkownik wykona gest w interfejsie, który aplikacja rozpozna jako sygnał do rozpoczęcia przeciągania danych. W odpowiedzi aplikacja powiadamia system, że rozpoczyna się operacja przeciągania i upuszczania. System wywołuje zwrotnie Twoją aplikację, aby uzyskać cień przeciągania i wyświetlić go użytkownikom podczas procesu przeciągania i upuszczania.

Gdy użytkownik przesuwa cień przeciągania po układzie aplikacji, system wysyła zdarzenia przeciągania do odbiorników zdarzeń przeciągania i metod wywołania zwrotnego powiązanych z obiektami View w układzie. Jeśli użytkownik zwolni przeciągany element nad celem upuszczania, system wyśle do niego dane. Operacja przeciągania i upuszczania kończy się, gdy użytkownik zwolni cień przeciągania, niezależnie od tego, czy znajduje się on nad miejscem docelowym.

Tematy

Najważniejsze pojęcia
Poznaj proces przeciągania i upuszczania
DropHelper ułatwiający przeciąganie i upuszczanie
Dowiedz się, jak wdrożyć funkcję przeciągnij i upuść za pomocą DropHelper.
Implementowanie przeciągania i upuszczania za pomocą widoków
Możesz też zaimplementować przeciąganie i upuszczanie za pomocą widoków Androida, co daje programistom większą kontrolę nad szczegółami.
Przeciąganie i upuszczanie w trybie wielu okien
Obsługa przeciągania i upuszczania w trybie wielu okien, umożliwiająca przenoszenie obiektów między różnymi aplikacjami.

Dodatkowe materiały