在地图开发中,经常会需要将某个图层置于某个图层的上方,或者最顶层,这篇文章列举了三种方法供大家参考。
一、在添加时可以控制它的图层顺序:addLayer( id, beforeId )
beforeId :在现有层(beforeId)之前插入新图层(id),导致新图层(id)在现有层(beforeId)的下方显示。如果未指定此参数,该层将被附加到layers数组的末尾,并显示在所有其他层之上。
// Add a new symbol layer before an existing layer
map.addLayer({
id: 'states',
// References a source that's already been defined
source: 'state-data',
type: 'symbol',
layout: {
// Set the label content to the
// feature's `name` property
'text-field': ['get', 'name']
}
// Add the layer before the existing `cities` layer
}, 'cities');
二、使用moveLayer( id, beforeId )
id:要移动的层id。
beforeId: 插入新层的现有层的ID。当查看地图时,id层将出现在beforeId层的下面。如果beforeId被省略,该层将被添加到layers数组的末尾,并出现在地图上的所有其他层之上文章来源:https://www.toymoban.com/news/detail-591164.html
map.moveLayer('point', 'polygon');
map.moveLayer('polygon', 'point');
三、第三种方法比较繁琐,根据需求将图层列表排序,使用setStyle()文章来源地址https://www.toymoban.com/news/detail-591164.html
到了这里,关于mapbox 控制图层显示层级 | 将某个图层置于另一个图层的上方,或者置于最顶层的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!