2011-05-12 33 views

Respuesta

38

Cuando habilita el mapa y le pasa las opciones, tiene la posibilidad de especificar un mapTypeControlOptions. Estos tienen una matriz que especifica qué tipo de tipo de mapa permitirá que el usuario pueda ver. Se puede ver aquí http://code.google.com/apis/maps/documentation/javascript/reference.html#MapTypeControlOptions.

Si no desea que el usuario tenga ninguna opción en cuanto a los tipos de mapa, también puede especificarlo estableciendo los mapas mapTypeControl en falso.

+2

Configuración MapTypeControl a falso se desvanece definitivamente el control, pero ¿cómo puedo personalizarlo para que MapTypeControl sólo contiene botones SATÉLITE y el terreno? –

+0

Eso es lo que debe hacer mapTypeControlOptions. Tiene una matriz donde puede especificar que SATELLITE y TERRAIN son las opciones que el usuario debería ver. –

+14

No sé si es una cosa v3, pero si alguien desea ocultar completamente este control, establecer 'mapTypeControl' en' false' no funciona. En cambio, lo que funcionó para mí (en v3) fue establecer: 'mapTypeControlOptions: {mapTypeIds: []}' – OrPo

84
var myOptions = { 
    zoom: 2, 
    center: **Your LatLng object**, 
    mapTypeControlOptions: { 
     mapTypeIds: [google.maps.MapTypeId.ROADMAP, google.maps.MapTypeId.HYBRID] 
    }, // here´s the array of controls 
    disableDefaultUI: true, // a way to quickly hide all controls 
    mapTypeControl: true, 
    scaleControl: true, 
    zoomControl: true, 
    zoomControlOptions: { 
     style: google.maps.ZoomControlStyle.LARGE 
    }, 
    mapTypeId: google.maps.MapTypeId.ROADMAP 
}; 
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions); // displays in <article id="map_canvas"></article> 
//map.mapTypeControl = false; // OPTIONAL: hides the map control 
15

Puede ocultarlos a través de CSS

.gm-style-mtc { 
    display: none; 
} 
+4

Eso es hacer trampa., Pero estoy de acuerdo con eso ... –

+6

Esto puede no funcionar en el futuro ... – MasterScrat

+1

Esto es no a prueba de futuro. Es mejor usar 'mapTypeControlOptions' – qarthandso

3

que tenía el mismo problema. Establecer mapTypeControl: false y pasar con otras opciones funcionó para mí. Puede consultar la especificación here.

12

opción Desactivar satélite:

mapTypeControl: false 

Desactivar vista de la calle.

streetViewControl: false 
4

MapTypeControl y la opción streetViewControl en false

var map = new google.maps.Map(document.getElementById('map_canvas'), { 
      center: new google.maps.LatLng(latitudeFirst, longitudeFirst), 
      zoom: 12, 
      streetViewControl: false, 
      mapTypeControl: false 
     }); 
Cuestiones relacionadas