google-maps - 无法在 Google map 中隐藏某些特征类型

标签 google-maps google-maps-api-3

我正在使用 Google Maps API Styled Map Wizard ( http://gmaps-samples-v3.googlecode.com/svn/trunk/styledmaps/wizard/index.html?utm_medium=twitter ) 来自定义我想使用的 map 的外观,该 map 放大到街道级别(缩放:16)。我基本上想摆脱所有标签、文本或图标。我到达那里大约 95% 但仍然存在某些标签,即:正方形的名称。

直到现在我还没有找到一种方法来隐藏这些标签。尽管我怀疑 Google map (或此工具)的自定义功能存在错误,但我想问一下是否有人遇到过同样的问题?有人对如何处理甚至解决这个问题有任何建议吗?

下面是说明问题的屏幕截图。
欢迎任何提示。谢谢!

enter image description here

    function initialize() {

        var mapStyles = [ 
            { 
                "featureType": "administrative", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "road", 
                "elementType": "labels", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "road", 
                "elementType": "geometry.stroke", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "road", 
                "elementType": "geometry.fill", 
                "stylers": [ 
                    { "visibility": "on" }, 
                    { "color": "#ffffff" }
                ] 
            },{ 
                "featureType": "transit", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "poi.attraction", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "poi.business", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "poi.government", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "poi.medical", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "poi.park", 
                "elementType": "labels", 
                "stylers": [ { "visibility": "off" } ]                  
            },{ 
                "featureType": "poi.place_of_worship", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "poi.school", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "poi.sports_complex", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "landscape.man_made", 
                "stylers": [ 
                    { "visibility": "on" }, 
                    { "color": "#fce8f0" } 
                ] 
            },{ 
                "featureType": "landscape.natural", 
                "elementType": "labels", 
                "stylers": [ { "visibility": "off" } ] 
            },{ 
                "featureType": "landscape.natural", 
                "elementType": "geometry", 
                "stylers": [ 
                    { "color": "#fce8f0" }, 
                    { "visibility": "on" } 
                ] 
            },{ 
                "featureType": "water", 
                "elementType": "labels", 
                "stylers": [ { "visibility": "off" } ] },
            { } 
        ];  

        var mapOptions = {
            center: { lat: 52.519772, lng: 13.399022},
            zoom: 16,
            scrollwheel: false,
            mapTypeControl: false,
            panControl: false,
            zoomControl: false,
            scaleControl: false,
            streetViewControl: false,
            styles: mapStyles
        };

        var map = new google.maps.Map(document.getElementById('map-canvas'),mapOptions);

    }
    google.maps.event.addDomListener(window, 'load', initialize);

最佳答案

如果您想删除所有文本标签,请将它们全部关闭:

var mapStyles = [{
    featureType: "all",
    elementType: "labels.text",
    stylers: [{
        visibility: "off"
    }]
}];

如果你想去掉所有标签,elementType: "labels"两者都适用 labels.textlabels.icon等。同样适用于特征类型。
var mapStyles = [{
    featureType: "all",
    elementType: "labels",
    stylers: [{
        visibility: "off"
    }]
}];

JSFiddle demo

来自 documentation :但是请注意,父要素可能包含一些未包含在其子要素类型之一中的附加要素。

关于google-maps - 无法在 Google map 中隐藏某些特征类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26103516/

相关文章:

ios - 让用户在 IOS 6 中选择谷歌地图和苹果 map ?

google-maps-api-3 - Google map 中的自定义标记图标在动画之前弹出

javascript - 加载谷歌地图样式的短暂延迟

javascript - 使用 Google Maps API Javascript 取消对标记的限制

google-maps - Google map 信息窗口显示不正确

javascript - 谷歌地图 API : Setting up callbacks for adding markers/polyline

javascript - Google 如何在未经用户许可的情况下获取当前位置

xcode - iOS 版谷歌地图崩溃

javascript - 谷歌地图标记集群 : how to combine Interface Renderer and GridOptions gridSize in configuration object?

google-maps - 只允许在谷歌地图中滚动缩放