如何在onTouch上仅使用ACTION_DOWN并允许其余的默认操作

时间:2012-10-24 11:04:20

标签: android onlongclicklistener

这里的目标是在谷歌地图上放置标记。

我想在用户执行longClick()时放置标记。

问题。长按侦听器没有关于用户单击位置的数据。我只能知道他实际点击了。此外,如果我使用触摸事件并且我不使用它(我要求地图使用其默认侦听器进行滚动)我不会听任何其他触摸事件,即使触摸重置。 (其他事件不会发生,afaik)。

如何知道用户在哪里执行了longClick,以便我可以在地图中放置一个标记?

2 个答案:

答案 0 :(得分:1)

public boolean onTouchEvent(MotionEvent event) {
   switch(event.getAction()) {
   case MotionEvent.ACTION_DOWN:
       dosomething
       return true; // processed the event
   default:
       return false;
   }
}

这将允许您处理ACTION_DOWN事件,并对所有其他事件进行默认处理。

答案 1 :(得分:0)

检查这是否有助于检测长按。 onFinish()的{​​{1}}方法是您放置代码以添加标记所需的位置。

它可用于检测长按,不确定它是否会覆盖CountdownTimer的滚动行为;)

MapView