当手指已经触摸屏幕时,如何在对话框上获取触摸事件

9
我有一个带有长按监听器的视图, 这会触发全屏对话框的显示。我需要在该对话框上捕获触摸事件 (特别是 ACTION_UP), 但由于 ACTION_DOWN 已被第一个视图捕获且从未释放, 所以我无法在对话框上获取到任何事件。
除了在视图上设置监听器以告诉对话框何时发生 ACTION_UP 之外,您是否知道从对话框的角度检测 ACTION_UP 的另一种方法?

或许您应该在点击后释放长按监听器(将其设置为空),并在关闭对话框时重新设置它。 - oznus
我没有使用监听器,而是使用视图的onTouchEvent方法。然而,我尝试设置一个标志,在该方法上返回false而不是true,但结果仍然相同。我还尝试将所有内容更改为监听器,但结果也是一样的。这值得一试,谢谢。 - Ignacio Guerendiain
你解决过这个问题吗? - Joaquin Iurchuk
不,我与那个应用程序的工作突然结束了,我也不再被迫这样做了。 - Ignacio Guerendiain
1个回答

0
你可以尝试在 OnLongClickListener 中返回 false,这样事件就不会被第一个视图消耗掉,这可能会让你的第二个对话框看到 Click 动作。

遗憾的是,GestureListener 的 onLongPress 方法返回的是 void 而不是 boolean。onLongPressListener 也是同样的情况。 - Ignacio Guerendiain

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接