1

我正在开发一个应用程序,因为我需要显示 googlemap(V2),并且当我触摸地图时我需要获取特定位置的地址。我在以前版本的谷歌地图中这样做了。在新版本中,我使用以下代码来显示地图,但是当我触摸地图时,我不知道如何获取该位置的地址。

所以,请指导我如何实现这个。

 private GoogleMap map;
 final LatLng HAMBURG = new LatLng(current_latitude, current_longitude);
 map = ((MapFragment) getFragmentManager().findFragmentById(R.id.map)).getMap();
 Marker hamburg = map.addMarker(new MarkerOptions().position(HAMBURG)
        .title("Hamburg"));
       // Move the camera instantly to hamburg with a zoom of 15.
 map.moveCamera(CameraUpdateFactory.newLatLngZoom(HAMBURG, 15));
    // Zoom in, animating the camera.
 map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);
4

2 回答 2

3

只需将实施添加OnMapClickListener到您的地图活动中即可。喜欢 :

        public class GoogleMapActivity extends FragmentActivity implements 
        LocationSource,LocationListener,OnMapClickListener,
        OnMapLongClickListener,OnMarkerDragListener,
        OnMarkerClickListener

然后 :

 map.setOnMapClickListener(this);
    @Override
    public void onMapClick(LatLng arg0) {
        //Make Your implementation HERE
    }
于 2013-05-11T13:10:20.957 回答
0

OnMapClickListener按照 Sercan Ozdemir 的建议与Geocoder.getFromLocation结合使用。

请记住使用线程(AsyncTask)Geocoder进行网络调用以获取实际地址。

或者,您可以使用来自 Google 的地理编码 API,这需要更多的工作(网络通信、解析)。

于 2013-05-11T14:13:28.733 回答