如何将Google地图标签放在首位?

时间:2014-06-14 07:46:26

标签: javascript google-maps google-maps-api-3 polyline

我正在使用谷歌地图中的折线。基本上我正在尝试使用折线在几条道路上画一条线。

现在这些折线阻挡(在顶部)道路标签。我已经更改了不透明度级别以便更好地查看,但我真的想要Google地图标签。

我研究过造型图,但我还没有找到合适的解决方案。有办法吗?

提前致谢。

This is how it looks like now

This is what i want

2 个答案:

答案 0 :(得分:5)

瓷砖(包含地面,标签,街道等)作为单个图像传递,而不是作为图层传递,因此无法在瓷砖中显示的特定要素之间放置任何东西。

但可能有方法。

假设您有2个(同步)地图,1个完整地图和1个地图,您只显示标签。

当您将带有标签的地图放在另一张地图的顶部时,它将能够获得所需的效果(这并不意味着我会建议它,我只是想避免说“不可能”)

Demo: http://jsfiddle.net/cs9M6/

答案 1 :(得分:3)

使用单个地图和StyledMapType可以更清晰地实现此目的。

// Create an overlay to display map labels only
var labelsMapType = new google.maps.StyledMapType([{
    // Hide all map features by default
    stylers: [{
        visibility: 'off'
    }]
}, {
    // then turn the label feature on
    elementType: 'labels',
    stylers: [{
        visibility: 'on'
    }]
}], {
    name: 'Labels'
});

// Add to the map's overlay collection
map.overlayMapTypes.push(labelsMapType);