18

当我在 Android 中启动 Google 地图时,它会显示整个世界。我需要更改什么才能将缩放设置为标记?这是代码。谢谢

        googlemap.getUiSettings().setZoomControlsEnabled(true);
    googlemap.getUiSettings().setMyLocationButtonEnabled(true);


    LatLng cameraLatLng = sfLatLng;
    float cameraZoom = 17;


    if(savedInstanceState != null){
        mapType = savedInstanceState.getInt("map_type", GoogleMap.MAP_TYPE_NORMAL);

        double savedLat = savedInstanceState.getDouble("lat");
        double savedLng = savedInstanceState.getDouble("lng");
        cameraLatLng = new LatLng(savedLat, savedLng);

        cameraZoom = savedInstanceState.getFloat("zoom", 30);

        googlemap.setMapType(mapType);
        googlemap.animateCamera(CameraUpdateFactory.newLatLngZoom(cameraLatLng, cameraZoom));
4

5 回答 5

48

试试这个---->

  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-06-08T11:16:13.747 回答
6
mMap.animateCamera(CameraUpdateFactory.zoomTo(19));
于 2016-08-24T03:42:21.993 回答
5

以下代码可以解决问题:

    function addMarker(lat, lng, info) {
    var pt = new google.maps.LatLng(lat, lng);
    bounds.extend(pt);

您也可以尝试以下方法:

    var pt = new google.maps.LatLng(lat, lng);
    map.setCenter(pt);
    map.setZoom(your desired zoom);

编辑:

 map.moveCamera( CameraUpdateFactory.newLatLngZoom(new LatLng(xxxx,xxxx) , 14.0f) );//where 14.0 is the zoom level
于 2013-06-08T09:43:48.813 回答
1

如果你有一个地方(或边界),你可以放大到它。例如,使用.newLatLngBounds()方法缩放到特定国家、城市或地址:

map.animateCamera(CameraUpdateFactory.newLatLngBounds(place.getViewport(), 10)); // 10 is padding

缩放级别将自动选择。它与位置搜索完美配合。

于 2015-12-01T06:49:10.793 回答
0
    private GoogleMap mMap;


   @Override
    public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;
        mMap.setMinZoomPreference(3.0f);
        mMap.setMaxZoomPreference(5.5f);
    }
于 2017-07-10T12:19:44.937 回答