GMaps v2 - Android:设置地图中心位置

12

我该如何在使用GMaps v2时将地图的中心设置为特定位置?这是我在使用GMaps v1时所做的:

public void setCenter( LatLng point )
{
  if( point.latitude*1000000 != 0 && point.longitude*1000000 != 0 )
  {
     if( mMapController != null )
     {
        mMapController.setCenter( point );
     }
     /*else if( mOpenStreetMapViewControllerSource != null )
     {
        mOpenStreetMapViewControllerSource.getController().setCenter( new org.osmdroid.util.GeoPoint( point.getLatitudeE6(), point.getLongitudeE6() ) );
        mPostponedSetCenterPoint = point;
     }*/
  }
}

我已经查看了GMaps v2的API,但找不到类似的功能。我该怎么做?

2个回答

35

您可以尝试:

map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(latitude, longitude), zoom));

其中 map 是 GoogleMap 实例。


我尝试了这个,但它看起来并不是居中的...有什么办法可以让它完全居中或者是我的眼睛出了问题?(我正在使用animateCamera) - corlaez
哦,别担心,其实没有什么需要修复的。GPS关闭和一些错误的代码让它表现得很奇怪。你展示的代码确实将它放在了正中央。 - corlaez

0
@Override
public void onMapReady(GoogleMap googleMap) {
    final LatLng SYDNEY = new LatLng(-33.87365, 151.20689);
    googleMap.addMarker(new MarkerOptions().position(SYDNEY));
    googleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(SYDNEY, 4.0f));
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接