我有一个活动,其中用户必须为他正在创建的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吗?
答案 0 :(得分:1)
答案 1 :(得分:0)
最后我使用了这种方法:
https://github.com/commonsguy/cw-android/tree/master/Maps/NooYawk
它绘制一个标记,让您在地图上移动它。您可以使用提供的代码轻松获取标记的坐标。