点按Google地图并获取地理位置

时间:2011-12-03 13:17:24

标签: android google-maps geolocation tap

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

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

我已尝试使用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;
 }

有没有办法做到这一点,或者我必须使用Overlays吗?

2 个答案:

答案 0 :(得分:1)

http://mobiforge.com/developing/story/using-google-maps-android

请参阅此链接,并参阅图9下方的“获取已触摸的位置”部分。

它可以帮到你

答案 1 :(得分:0)

最后我使用了这种方法:

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

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