15

作为标题,在地图 v1 中我可以使用

mapController.zoomToSpan(..., ..., ...);

包括屏幕上的所有标记。

剂量图V2有同样的方法吗?


2013/2/22 编辑:

首先,获取您想要在屏幕上涉及的所有 LatLng 点。

假设您有 3 个 LatLng 点,请使用

LatLngBounds bounds = new LatLngBounds.Builder().include(point1)
                    .include(point2).include(point3).build();

mMap.moveCamera(CameraUpdateFactory.newLatLngBounds(bounds, 50));
4

4 回答 4

2

尝试这个

  map.addMarker(new MarkerOptions().position(latlng)).setVisible(true);

  // Move the camera instantly to location with a zoom of 15.
  map.moveCamera(CameraUpdateFactory.newLatLngZoom(latlng, 15));

  // Zoom in, animating the camera.
  map.animateCamera(CameraUpdateFactory.zoomTo(14), 2000, null);
于 2013-12-20T05:00:53.427 回答
0

我希望这对你有用。

public class GoogleMapActivity extends FragmentActivity {

private GoogleMap map;
Bundle extras;

LatLng latlng;

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.google);

    extras = getIntent().getExtras();
    if (extras != null) {
        unit_long = extras.getString("unit_long");
        unit_lat = extras.getString("unit_lat");

    }

    latlng = new LatLng(Double.parseDouble("19.25252"),
            Double.parseDouble("23.25252525"));

    map = ((SupportMapFragment) getSupportFragmentManager()
            .findFragmentById(R.id.map)).getMap();

    Marker hamburg = map.addMarker(new MarkerOptions().position(latlng)
            .title("Location").snippet("I am here")
            .icon(BitmapDescriptorFactory.fromResource(R.drawable.marker)));

    map.moveCamera(CameraUpdateFactory.newLatLngZoom(latlng, 15));

    // Zoom in, animating the camera.use this line in your code 
    map.animateCamera(CameraUpdateFactory.zoomTo(14), 2000, null);
    // map.setMapType(GoogleMap.MAP_TYPE_NORMAL);
    map.setMapType(GoogleMap.MAP_TYPE_NORMAL);

}
}
于 2013-05-24T10:56:00.430 回答
0

地图V2

 protected void onCreate(Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_main);
 GooglePlayServicesUtil.isGooglePlayServicesAvailable(getApplicationContext());
 GoogleMap map = ((SupportMapFragment)getSupportFragmentManager()
                                            .findFragmentById(R.id.map)).getMap();
 map.setMapType(GoogleMap.MAP_TYPE_NORMAL);

     if (map != null) {
        // Zoom in, animating the camera.
    map.animateCamera(CameraUpdateFactory.zoomTo(12), 2000, null);
     }
 }

您可以更改 12 的值,即地图加载的缩放级别。玩得开心!

于 2013-09-10T07:18:41.607 回答
0

Google map V2 的几个方法可以做同样的事情:

static CameraUpdate  newLatLngBounds(LatLngBounds bounds, int padding)

返回一个CameraUpdate,它转换相机,使得指定的纬度/经度边界在屏幕上以最大可能的缩放级别居中。

static CameraUpdate newLatLngBounds(LatLngBounds bounds, int width, int height, int padding)

返回一个 CameraUpdate ,它转换相机,使得指定的纬度/经度边界在屏幕上以最大可能的缩放级别在指定尺寸的边界框内居中。

static CameraUpdate  newLatLngZoom(LatLng latLng, float zoom)

返回一个 CameraUpdate,它将屏幕中心移动到由 LatLng 对象指定的纬度和经度,并移动到给定的缩放级别。

这是使用其中之一的示例:

googleMap.animateCamera(CameraUpdateFactory.newLatLngZoom(geoPoint, zoom));
于 2014-02-27T15:45:11.520 回答