我有一个片段实现onCreateContextMenu
(菜单布局膨胀)和onContextItemSelected
菜单,我设置了一个addOnItemTouchListener
在我的RecyclerView上检测长按。我在此侦听器中创建了一个GestureDetector
实例,并覆盖了onLongPress
方法。我尝试测试是否捕获了事件(通过打印Toast消息),并且它有效。但是,当我通过使用此触摸侦听器进行长按时尝试显示上下文菜单时(我的理由是因为我想拦截侦听器,因此事件不会传播到视图组&# 39;孩子们),它不会在长时间后显示任何上下文菜单。
我也申请了registerForContextMenu(recyclerView)
,也试过申请
openContextMenu(recyclerView)但编译器检测到没有这种声明的方法。
答案 0 :(得分:0)
好吧,显然我是从一个片段调用openContextMenu而该方法仅在Activity中可用。所以最后我使用了getActivity()。openContextMenu并且它可以工作。