2013-06-08 22 views
14

Wenn ich Google Maps in Android starte, zeigt es die ganze Welt. Was muss ich ändern, um den Zoom auf den Marker zu setzen? Hier sind die Codes. DankGoogle Maps v2 Set Zoom Level

 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)); 

Antwort

4

Der folgende Code kann den Trick:

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

Sie können Folgendes versuchen:

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

Edit:

map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(xxxx,xxxx) , 14.0f));//where 14.0 is the zoom level 
+0

Ist Position die gleiche wie setCenter gesetzt, wenn ja, habe ich schon getan, aber es gibt keine Eigenschaft für setZoom ... – 1088

+0

den Bearbeitungs sehen ... – amalBit

41

versuchen this-- ->

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); 
+0

sehr gut funktioniert. Vielen Dank – 1088

+6

@ matic1088 Wenn dies Ihnen geholfen hat, akzeptieren Sie diese Antwort. –

+0

Wie wird das Gleiche gemacht (d. H. Einstellung der Zoomstufe), wenn LatLngBounds verwendet wird? – NarendraJi

1

Wenn Sie einen Ort (oder Grenzen) haben, können Sie darauf zoomen. Z.B. Zoom auf bestimmten Land, Stadt oder Adresse mit .newLatLngBounds() Methode:

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

Zoom-Ebene automatisch ausgewählt werden. Es funktioniert perfekt mit der Standortsuche.

4
mMap.animateCamera(CameraUpdateFactory.zoomTo(19)); 
0
private GoogleMap mMap; 


    @Override 
    public void onMapReady(GoogleMap googleMap) { 
     mMap = googleMap; 
     mMap.setMinZoomPreference(3.0f); 
     mMap.setMaxZoomPreference(5.5f); 
    } 
Verwandte Themen