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.