Включить перетаскивание

Попробуйте способ создания
Jetpack Compose — рекомендуемый набор инструментов пользовательского интерфейса для Android. Узнайте, как использовать перетаскивание в Compose.

Платформа перетаскивания Android позволяет добавлять в приложение возможности интерактивного перетаскивания. С помощью перетаскивания пользователи могут копировать или перемещать текст, изображения, объекты и любой контент, который может быть представлен URI, из одного View в другое внутри приложения или между приложениями в многооконном режиме .

Текстовая строка и изображение перетаскиваются внутри приложения.Текстовая строка и изображение перетаскиваются между приложениями в режиме разделенного экрана.
Рисунок 1. Перетаскивание внутри приложения.
Рисунок 2. Перетаскивание между приложениями.

Платформа включает в себя класс событий перетаскивания, прослушиватели перетаскивания, а также вспомогательные классы и методы. Хотя эта платформа в первую очередь предназначена для передачи данных, вы можете использовать ее и для других действий пользовательского интерфейса. Например, вы можете создать приложение, которое смешивает цвета, когда пользователь перетаскивает значок цвета поверх другого значка. Однако остальная часть документа описывает структуру перетаскивания в контексте передачи данных.

Обзор

В процессе перетаскивания задействовано несколько элементов.

  1. Источник перетаскивания: вид начальной точки процесса перетаскивания.

  2. Цель перетаскивания: представление, которое может принимать данные перетаскивания.

  3. Тень перетаскивания : Тень перетаскивания — это представление перетаскиваемых данных, которое видно пользователям.

  4. События перетаскивания : когда пользователь перемещает тень перетаскивания по макету приложения, система отправляет события перетаскивания прослушивателям событий перетаскивания и методам обратного вызова, связанным с объектами View в макете.

Операция перетаскивания начинается, когда пользователь выполняет жест пользовательского интерфейса, который ваше приложение распознает как сигнал к началу перетаскивания данных. В ответ приложение уведомляет систему о начале операции перетаскивания. Система перезванивает вашему приложению, чтобы получить тень . и показывать его пользователям во время процесса перетаскивания.

Когда пользователь перемещает тень перетаскивания по макету приложения, система отправляет события перетаскивания прослушивателям событий перетаскивания и методам обратного вызова, связанным с объектами View в макете. Если пользователь отпускает тень перетаскивания над целью перетаскивания, система отправляет в нее данные. Операция перетаскивания заканчивается, когда пользователь отпускает тень, независимо от того, находится ли тень над целью перетаскивания или нет.

Темы

Ключевые понятия
Поймите процесс перетаскивания.
DropHelper для упрощенного перетаскивания
Узнайте, как реализовать перетаскивание с помощью DropHelper .
Реализация перетаскивания с представлениями
В качестве альтернативы можно реализовать перетаскивание с помощью представлений Android, это позволит разработчикам лучше контролировать детали.
Перетаскивание в многооконном режиме
Поддержка перетаскивания в многооконном режиме позволяет объектам перемещаться по разным приложениям.

Дополнительные ресурсы

,
Попробуйте способ создания
Jetpack Compose — рекомендуемый набор инструментов пользовательского интерфейса для Android. Узнайте, как использовать перетаскивание в Compose.

Платформа перетаскивания Android позволяет добавлять в приложение возможности интерактивного перетаскивания. С помощью перетаскивания пользователи могут копировать или перемещать текст, изображения, объекты и любой контент, который может быть представлен URI, из одного View в другое внутри приложения или между приложениями в многооконном режиме .

Текстовая строка и изображение перетаскиваются внутри приложения.Текстовая строка и изображение перетаскиваются между приложениями в режиме разделенного экрана.
Рисунок 1. Перетаскивание внутри приложения.
Рисунок 2. Перетаскивание между приложениями.

Платформа включает в себя класс событий перетаскивания, прослушиватели перетаскивания, а также вспомогательные классы и методы. Хотя эта платформа в первую очередь предназначена для передачи данных, вы можете использовать ее и для других действий пользовательского интерфейса. Например, вы можете создать приложение, которое смешивает цвета, когда пользователь перетаскивает значок цвета поверх другого значка. Однако остальная часть документа описывает структуру перетаскивания в контексте передачи данных.

Обзор

В процессе перетаскивания задействовано несколько элементов.

  1. Источник перетаскивания: вид начальной точки процесса перетаскивания.

  2. Цель перетаскивания: представление, которое может принимать данные перетаскивания.

  3. Тень перетаскивания : Тень перетаскивания — это представление перетаскиваемых данных, которое видно пользователям.

  4. События перетаскивания : когда пользователь перемещает тень перетаскивания по макету приложения, система отправляет события перетаскивания прослушивателям событий перетаскивания и методам обратного вызова, связанным с объектами View в макете.

Операция перетаскивания начинается, когда пользователь выполняет жест пользовательского интерфейса, который ваше приложение распознает как сигнал к началу перетаскивания данных. В ответ приложение уведомляет систему о начале операции перетаскивания. Система перезванивает вашему приложению, чтобы получить тень . и показывать его пользователям во время процесса перетаскивания.

Когда пользователь перемещает тень перетаскивания по макету приложения, система отправляет события перетаскивания прослушивателям событий перетаскивания и методам обратного вызова, связанным с объектами View в макете. Если пользователь отпускает тень перетаскивания над целью перетаскивания, система отправляет в нее данные. Операция перетаскивания заканчивается, когда пользователь отпускает тень, независимо от того, находится ли тень над целью перетаскивания или нет.

Темы

Ключевые понятия
Поймите процесс перетаскивания.
DropHelper для упрощенного перетаскивания
Узнайте, как реализовать перетаскивание с помощью DropHelper .
Реализация перетаскивания с представлениями
В качестве альтернативы можно реализовать перетаскивание с помощью представлений Android, это позволит разработчикам лучше контролировать детали.
Перетаскивание в многооконном режиме
Поддержка перетаскивания в многооконном режиме позволяет объектам перемещаться по разным приложениям.

Дополнительные ресурсы

,
Попробуйте способ создания
Jetpack Compose — рекомендуемый набор инструментов пользовательского интерфейса для Android. Узнайте, как использовать перетаскивание в Compose.

Платформа перетаскивания Android позволяет добавлять в приложение возможности интерактивного перетаскивания. С помощью перетаскивания пользователи могут копировать или перемещать текст, изображения, объекты и любой контент, который может быть представлен URI, из одного View в другое внутри приложения или между приложениями в многооконном режиме .

Текстовая строка и изображение перетаскиваются внутри приложения.Текстовая строка и изображение перетаскиваются между приложениями в режиме разделенного экрана.
Рисунок 1. Перетаскивание внутри приложения.
Рисунок 2. Перетаскивание между приложениями.

Платформа включает в себя класс событий перетаскивания, прослушиватели перетаскивания, а также вспомогательные классы и методы. Хотя эта платформа в первую очередь предназначена для передачи данных, вы можете использовать ее и для других действий пользовательского интерфейса. Например, вы можете создать приложение, которое смешивает цвета, когда пользователь перетаскивает значок цвета поверх другого значка. Однако остальная часть документа описывает структуру перетаскивания в контексте передачи данных.

Обзор

В процессе перетаскивания задействовано несколько элементов.

  1. Источник перетаскивания: вид начальной точки процесса перетаскивания.

  2. Цель перетаскивания: представление, которое может принимать данные перетаскивания.

  3. Тень перетаскивания : Тень перетаскивания — это представление перетаскиваемых данных, которое видно пользователям.

  4. События перетаскивания : когда пользователь перемещает тень перетаскивания по макету приложения, система отправляет события перетаскивания прослушивателям событий перетаскивания и методам обратного вызова, связанным с объектами View в макете.

Операция перетаскивания начинается, когда пользователь выполняет жест пользовательского интерфейса, который ваше приложение распознает как сигнал к началу перетаскивания данных. В ответ приложение уведомляет систему о начале операции перетаскивания. Система перезванивает вашему приложению, чтобы получить тень . и показывать его пользователям во время процесса перетаскивания.

Когда пользователь перемещает тень перетаскивания по макету приложения, система отправляет события перетаскивания прослушивателям событий перетаскивания и методам обратного вызова, связанным с объектами View в макете. Если пользователь отпускает тень перетаскивания над целью перетаскивания, система отправляет в нее данные. Операция перетаскивания заканчивается, когда пользователь отпускает тень, независимо от того, находится ли тень над целью перетаскивания или нет.

Темы

Ключевые понятия
Поймите процесс перетаскивания.
DropHelper для упрощенного перетаскивания
Узнайте, как реализовать перетаскивание с помощью DropHelper .
Реализация перетаскивания с представлениями
В качестве альтернативы можно реализовать перетаскивание с помощью представлений Android, это позволит разработчикам лучше контролировать детали.
Перетаскивание в многооконном режиме
Поддержка перетаскивания в многооконном режиме позволяет объектам перемещаться по разным приложениям.

Дополнительные ресурсы