В настоящее время я реализую приложение, в котором есть RecyclerView, в котором есть несколько пользовательских представлений. Из каждого из этих представлений пользователь может открыть контекстное меню (которое требует длинного щелчка), но это довольно сложно понять, как правило, они просто выполняют простой щелчок, а затем думают, что больше ничего к этому. Но если мне удастся дать некоторую обратную связь UI , это может быть намного яснее. Идея заключается в простой анимации пульсации, которая выделяет фон, который не может быть выполнен простым щелчком, но который проделывает весь путь для длительного действия щелчка.
Поскольку я застрял в этом в течение двух дней, я провел свое исследование и обнаружил некоторые SO вопросы, задающие одно и то же, например, этот один из Чеок Ян Ченга очень хорошо написан, и он даже опубликовал видео, показывающее желаемый эффект (мой вопрос почти такой же), но нет хороших ответов, так как первый говорит, что мы должны использовать ?attr/selectableItemBackground
, но данный эффект отличается от того, к которому я стремлюсь, и Я попробовал второй, он ничего не делает для простого щелчка, когда вы запускаете анимацию в onLongClick.
РЕДАКТИРОВАТЬ:
Обратите внимание, что ожидаемое поведение не может быть достигнуто ни с помощью
?attr/selectableItemBackground
, ни путем создания XML-файла ряби, а затем установить его в качестве фона, так как это даст обычную анимацию onClick и анимацию longClick, отличную от желаемой, посмотрите на это видео для просмотра желаемого эффекта.