【发布时间】:2011-11-07 09:48:50
【问题描述】:
我是安卓谷歌地图的新手。 我想要一个功能,例如,它必须在页面上显示地图,并且地图中必须有一个标记,并且地图必须是可拖动的,并且通过拖动它必须显示拖动位置的纬度和经度.. 谁能帮我解决这个问题?
【问题讨论】:
标签: android google-maps google-maps-markers
我是安卓谷歌地图的新手。 我想要一个功能,例如,它必须在页面上显示地图,并且地图中必须有一个标记,并且地图必须是可拖动的,并且通过拖动它必须显示拖动位置的纬度和经度.. 谁能帮我解决这个问题?
【问题讨论】:
标签: android google-maps google-maps-markers
这里有一个tutorial,就是这样做的。
覆盖onTouchEvent()
if (Action == MotionEvent.ACTION_UP){
if(!moveMap)
{
Projection proj = myMapView.getProjection();
GeoPoint loc = proj.fromPixels((int)arg0.getX(), (int)arg0.getY());
//remove the last marker
myMapView.getOverlays().remove(0);
centerLocation(loc);
}
else if (Action == MotionEvent.ACTION_MOVE){
moveMap = true;
}
【讨论】:
使用下面的sn-p获取标记的拖动位置和详细信息。
map.setOnMarkerDragListener(new GoogleMap.OnMarkerDragListener() {
@Override
public void onMarkerDragStart(Marker marker) {
}
@Override
public void onMarkerDragEnd(Marker marker) {
Log.d(TAG, "latitude : "+ marker.getPosition().latitude);
marker.setSnippet(marker.getPosition().latitude);
map.animateCamera(CameraUpdateFactory.newLatLng(marker.getPosition()));
}
@Override
public void onMarkerDrag(Marker marker) {
}
});
【讨论】: