У меня есть фрагмент, реализующий onCreateContextMenu
(где раздуты меню) и onContextItemSelected
, и я установил для моего долговременного нажатия addOnItemTouchListener
на моем RecyclerView. Я создал экземпляр GestureDetector
в этом прослушивателе и переопределить метод onLongPress
. Я пытаюсь проверить, захвачено ли событие (путем печати тоста), и оно работает. Тем не менее, когда я пытаюсь показать контекстное меню, когда есть длинный прессу, используя этот сенсорный прослушиватель (мои рассуждения состоят в том, что я хочу перехватить слушателя, чтобы событие не распространялось на дочерние элементы группы просмотра), это не так После длинного нажатия контекстное меню не отображается. Я также применил registerForContextMenu(recyclerView)
, также попробовал применить openContextMenu (recyclerView), но компилятор обнаружил, что нет такого метода с таким объявлением.Открытие плавающего контекстного меню с помощью GestureDetector onLongPress [ANDROID]
0
A
ответ
0
Ок, видимо, я вызываю openContextMenu из фрагмента, и метод доступен только в Activity. Поэтому в конце я использую getActivity(). OpenContextMenu и он работает.