我使用了本教程 http://mobiforge.com/developing/story/using-google-maps-android 在我单击特定区域时,显示映射视图并设置OnTouch事件以显示吐司消息(纬度/经度)。现在,我的问题是,即使是移动地图,我即使触摸屏幕的那一刻也会显示吐司消息?我只想在降低点和修饰点相同的情况下显示烤面包。我该如何实施?

有帮助吗?

解决方案

检查移动位是否在 动力

if(event.getAction() & MotionEvent.ACTION_MOVE == MotionEvent.ACTION_MOVE)

其他提示

这是正确的方法吗?我很确定有更好的方法。

if (event.getAction() == 0) {                
    touchX = (int) event.getX();
    touchY = (int) event.getY();
}
if(event.getAction() == 1) {
  if(event.getX() == touchX && event.getY()== touchY){
    GeoPoint p = mapView.getProjection().fromPixels((int) event.getX(), (int)event.getY());
       Toast.makeText(getBaseContext(), 
         p.getLatitudeE6() / 1E6 + "," + 
         p.getLongitudeE6() /1E6 , 
         Toast.LENGTH_SHORT).show();
    }
}

这对我有用,当我按下并拖动什么都没发生时,但是如果我按下并释放它可以起作用!就像OnClicklistener的行为一样。

  public boolean onTouch(View v, MotionEvent event) {
      if (event.getAction() == MotionEvent.ACTION_UP){
         // yer Code here ...........
      }

      return false;
  }
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top