はい、あります。 を使用してMapTypeIds
、スタイル付きマップを ID に関連付ける必要があります。map.setMapTypeId([MapTypeId])
次に、ではなく を使用してその場でマップ スタイルを変更しますmap.setOptions([options])
。Styled Maps docを参照用にざっと読むことをお勧めします。ただし、基本的に注意する必要があるのは、次の 3 点です。
- 新しい StyledMapType オブジェクトを作成する
- スタイル付きマップを MapTypeId に関連付ける
- MapType をディスプレイに設定します
注意すべき 3 つの重要なコンポーネントへのコメントとともに、jsfiddleの例を含めました。
新しい StyledMapType の作成は非常に簡単なので、まず StyledMapType と MapTypeID の関連付けについて説明します。
map.mapTypes.set('hide_street_names', hideLabels);
基本的に、これは、この場合は -またはなどと同じようhideLabels
に、mapTypeID を使用して styledmap を参照できることを意味します。hide_street_names
google.maps.MapTypeId.ROADMAP
google.maps.MapTypeId.TERRAIN
次に、マップの MapTypeId を設定して、クリック アクションで MapTypeId を切り替えて (または現在制御している方法で)、スタイルをトリガーします。
map.setMapTypeId('hide_street_names');
- を使用して mapTypeID を ROADMAP に戻すと、デフォルトのビューに戻ります。map.setMapTypeId(google.maps.MapTypeId.ROADMAP);