Фреймворк Android позволяет добавлять в приложение интерактивные функции перетаскивания. С их помощью пользователи могут копировать или перемещать текст, изображения, объекты и любой контент, который можно представить в виде URI, из одного элемента View в другой в пределах приложения или между приложениями в многооконном режиме.
|
|
|
|
|
Фреймворк включает класс событий перетаскивания, прослушиватели перетаскивания, а также вспомогательные классы и методы. Хотя в основном он предназначен для передачи данных, его можно использовать и для других действий в интерфейсе. Например, вы можете создать приложение, в котором цвета смешиваются, когда пользователь перетаскивает значок одного цвета на значок другого. Однако в остальной части документа фреймворк перетаскивания описывается в контексте передачи данных.
Обзор
В процессе перетаскивания участвует несколько элементов.
Источник перетаскивания – начальная точка процесса перетаскивания.
Цель перетаскивания – представление, которое может принимать перетаскиваемые данные.
Тень перетаскивания. Тень перетаскивания – это видимое пользователю представление перетаскиваемых данных.
События перетаскивания. Когда пользователь перемещает тень перетаскивания по макету приложения, система отправляет события перетаскивания в прослушиватели событий перетаскивания и методы обратного вызова, связанные с объектами
Viewв макете.
Операция перетаскивания начинается, когда пользователь выполняет жест пользовательского интерфейса, который ваше приложение распознает как сигнал для начала перетаскивания данных. В ответ приложение уведомляет систему о начале операции перетаскивания. Система обращается к вашему приложению, чтобы получить тень перетаскивания и показать ее пользователям во время перетаскивания.
Когда пользователь перемещает тень перетаскивания по макету приложения, система отправляет события перетаскивания прослушивателям событий перетаскивания и методам обратного вызова, связанным с объектами View в макете. Если пользователь отпускает тень перетаскивания над целью перетаскивания, система отправляет ей данные. Операция перетаскивания завершается, когда пользователь отпускает тень перетаскивания, независимо от того, находится ли она над целью перетаскивания.
Темы
- Основные понятия
- Поймите процесс перетаскивания.
- DropHelper для упрощенного перетаскивания
- Узнайте, как реализовать перетаскивание с помощью
DropHelper. - Как реализовать перетаскивание с помощью представлений
- Вы также можете реализовать перетаскивание с помощью представлений Android. Это позволит вам лучше контролировать детали.
- Как перетаскивать объекты в многооконном режиме
- Поддержка перетаскивания в многооконном режиме, позволяющая перемещать объекты между разными приложениями.
Дополнительные ресурсы
- Практическая работа по перетаскиванию с использованием представлений
- Видео Перетаскивание для удобной работы в режиме многозадачности
- Примеры перетаскивания, в которых показаны различные способы реализации перетаскивания и приема мультимедиа.