Bing地图V8中如何隐藏标签(街道,道路,城市)名称和城市

How to hide the label (street,road,city) names and city in Bing map V8

刚开始使用新版Bing地图V8。 我想显示一张没有标签的地图。

在旧版本的 Bing 地图上。使用选项 [LabelOverlay].

很容易
labelOverlay: Microsoft.Maps.LabelOverlay.hidden

现在在 V8 版本上它不再工作了。我不敢相信微软会忘记它。我发现我们应该在这里使用 [showMapLabels]

https://social.msdn.microsoft.com/Forums/en-US/f175baf0-bb59-44d9-ac0f-89b7403b6cdd/bing-maps-v8-api-loadmodule?forum=bingmapsajax

我的代码,当我设置地图时

map.setOptions({
                credentials: '<%= ArcadiaSettings.BingMapsKey %>',
                showMapTypeSelector: false,
                enableSearchLogo: false,
                enableClickableLogo: false,
                showMapTypeSelector: false,
                showScalebar: false,
                showDashboard: false,
                disableUserInput: false,
                showMapLabels: false
            })

但没有任何变化。 有人可以帮助我吗?

如果在加载地图时使用,这在 V8 中确实有效。上周在 setView 函数中使用它时出现了一个已知错误。这可能会在本周晚些时候在实验分支中得到修复。我向你保证微软没有忘记这个功能。我在预览期间用了很多,效果很好。

使用实验分支,这里是一个在查看航拍图像时隐藏标签的例子:

var map = new Microsoft.Maps.Map(document.getElementById('myMap'), {
    credentials: 'Your Bing Maps Key',
    mapTypeId: Microsoft.Maps.MapTypeId.aerial
});
map.setView({ labelOverlay: Microsoft.Maps.LabelOverlay.hidden});

您也可以在加载地图时设置 labelOverlay 而不是使用 setView。

这是一个隐藏道路标签的例子。

var map = new Microsoft.Maps.Map(document.getElementById('myMap'), {
    credentials: 'Your Bing Maps Key',
    allowHidingLabelsOfRoad: true
});
map.setView({ labelOverlay: Microsoft.Maps.LabelOverlay.hidden});