ListView onItemLongClickListener不会阻止链接点击

时间:2012-07-31 15:51:17

标签: android listview

环境: 我有一个Android ListView,其行包含TextViews,其中包含一些带有可点击链接的HTML(URLSpans)。在ListView上,我设置了一个OnItemLongClickListener来监听各行的长按事件。

目标: 当我收到一个长按事件时,我想在同一触摸事件的链接上禁用,但我没有看到如何执行此操作。长时间点击正确,但是一旦我抬起手指,链接龙头也会闪光。

我已经尝试过的事情: 我试过在onItemLongClick方法上返回true(和false) - 它似乎没有任何区别。我试图在长时间点击后截取MotionEvent.ACTION_UP,以便我可以暂时使用链接点按,但ACTION_UP不会触发 - 至少不在ListView上。

1 个答案:

答案 0 :(得分:1)

我做了一些搜索并找到了类似问题的答案:Android TextView Linkify intercepts with parent View gestures

我用这个答案中的概念来解决我的问题。我延长了TextView课程并覆盖了onTouchEvent并查看我是否正在点击触地事件的链接。如果是的话,我会保存该链接并在ListView.onItemClick上以编程方式“点击”它,如果我没有先遇到LongClick。呸。

如果有其他人有更优雅的方式来解决问题,请发布它,如果有效,我会接受你的回答。如果没有,我会在几天内接受我自己的回答。