Android: Как я могу создать RecyclerView, где я могу свободно перетаскивать элемент для выполнения определенных действий? - PullRequest
0 голосов
/ 13 февраля 2020

Я сталкиваюсь с сложной задачей, когда у меня есть горизонтальный RecyclerView, где пользователь должен иметь возможность захватить первый элемент и свободно перемещать его. Если он уронит его в двух определенных областях, он будет добавлен в два других списка соответственно.

Вот диаграмма для явного задания:

enter image description here

По сути, пользователь может захватить только первый элемент и затем добавить его в список избранных или добавить его в список не понравившихся. Перемещение должно быть на 100% свободным и следовать за пальцем пользователя на экране. Если элемент помещается на полпути между исходным средним списком и одним из верхнего или нижнего списка, но ближе к списку результатов, тогда элемент должен иметь плавную анимацию по отношению к другому списку с некоторой интерполяцией [Это важная часть анимация должна быть очень плавной до такой степени, что карта попадает в конечную позицию].

Я никогда не делал ничего подобного, у меня есть только небольшой опыт работы с MotionLayout, но я знаю, что в этом нет смысла пример. На первый взгляд, я ожидаю, что это можно сделать с помощью DragEvents, но я не знаю, с чего начать. Любая помощь или примеры, чтобы научить меня, как это сделать?

1 Ответ

0 голосов
/ 13 февраля 2020

Не могли бы вы взглянуть на https://github.com/davideas/FlexibleAdapter

Быстрый и универсальный адаптер для RecyclerView, который объединяет несколько функций в одну библиотеку для значительного улучшения взаимодействия с пользователем

...