Jak wyłączyć widok satelitarny mapy Google?


90

Pracuję na Google Maps Javascript API V 3.

Wszystko działa dobrze, ale chcę wyłączyć przycisk MAPA, który pojawia się w prawym górnym obszarze z przyciskiem SATELITA.

Jak mogę to zrobić?

Odpowiedzi:


65

Po włączeniu mapy i przekazaniu do niej opcji, masz szansę określić mapTypeControlOptions. Mają one tablicę, która określa, jaki rodzaj mapy pozwolisz użytkownikowi zobaczyć. Można go zobaczyć tutaj http://code.google.com/apis/maps/documentation/javascript/reference.html#MapTypeControlOptions .

Jeśli nie chcesz, aby użytkownik miał jakiekolwiek opcje dotyczące typów map, możesz to również określić, ustawiając dla mapTypeControl wartość false.


2
Ustawienie parametru mapTypeControl na false definitywnie znika kontrolkę, ale jak mogę ją dostosować, aby mapTypeControl zawierała tylko przyciski SATELLITE i TERRAIN?
Jatin Dhoot

To właśnie powinno zrobić mapTypeControlOptions. Przechowuje tablicę, w której można określić, że SATELLITE i TERRAIN są opcjami, które użytkownik powinien zobaczyć.
Kasper Vesth

23
Nie wiem, czy to kwestia v3, ale jeśli ktoś chce całkowicie ukryć tę kontrolę, ustawienie mapTypeControlna falsenie działa. Zamiast tego działało dla mnie (w wersji 3) ustawienie:mapTypeControlOptions: { mapTypeIds: [] }
OrPo

125
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

45

Wyłącz opcję satelity:

mapTypeControl: false

Wyłącz widok ulicy.

streetViewControl: false

19

Możesz je ukryć za pomocą css

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

1
To nie jest przyszłościowe. Lepszy w użyciumapTypeControlOptions
qarthandso

to nie jest rozwiązanie
Emiliano

15

mapTypeControl i streetViewControl na false

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

3

Miałem ten sam problem. Ustawienie mapTypeControl: falsei przekazanie z innymi opcjami zadziałało dla mnie. Możesz sprawdzić specyfikację tutaj .

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.