0

我有一个活动,用户必须为他正在创建的 POI 设置位置。所以,有一张空地图。我希望能够在地图上的某个点长按并获得该位置。

我已经看到了其他一些关于此的问题,但是使用覆盖来设置位置(在地图上移动它等等)。我不想有一个覆盖。我只想单击地图上的某个位置并获取该位置。

我已经尝试在 MapActivity 中使用 onTouchEvent,但是在点击地图时它没有被触发。

 @Override
 public boolean onTouchEvent(MotionEvent ev){
     if (ev.getAction() == 1){
         GeoPoint p = mapView.getProjection().fromPixels((int) ev.getX(), (int) ev.getY());
         Toast.makeText(this, p.getLatitudeE6() / 1E6 + "," + p.getLongitudeE6() / 1E6, Toast.LENGTH_LONG).show();
     }
     return false;
 }

有什么办法可以做到这一点,还是我必须使用叠加层?

4

1 回答 1

0

最后我使用了这种方法:

https://github.com/commonsguy/cw-android/tree/master/Maps/NooYawk

它会绘制一个标记并让您在地图上移动它。您可以使用提供的代码轻松获取标记的坐标。

于 2011-12-15T23:51:45.853 回答