拖动视图时中断OnItemLongClickListener

时间:2014-07-12 14:58:02

标签: android draggable onclicklistener ontouchevent ontouchlistener

在我的Android应用程序中,我使用OnTouchListener创建了一个可拖动的视图。这仍然很好。侦听器设置为ListView。现在的问题是如何一次设置onTouchsetOnItem(Long)ClickListener(s)。 我已经尝试了什么:

  1. 设置两个侦听器,onTouch事件返回false。当我拖动ListView时,OnItemLongClickListener事件被触发。 - >可以拖动视图,但会出现一个对话框。

  2. 设置两个侦听器,onTouch事件返回true。 - >项目点击监听器永远不会被解雇

  3. 设置两个侦听器,onTouch事件返回false,但是当拖动手势的X差异足够大(在startX和nowX之间)时,它返回true。所以我的想法 是:点击返回false。但是当拖动视图时它返回true,因此不会触发侦听器。 - >在每次拖动时,OnLongItemClick事件都会被触发 - 即使是我 将手指从触摸屏上抬起。显然在OnLongItemClick时间内检测到return false事件,并且当OnTouch侦听器返回true时它仍然运行 - 并且没有中断。

  4. 我怎么能解决这个问题?我的想法是在识别拖动时打破OnLongItemClick事件。但我还没有找到办法如何做到这一点。

    如果您需要更复杂的#3解释,请发表评论。

    非常感谢。

0 个答案:

没有答案