我的应用显示用户标记。基本上,用户标记显示当前用户在地图上的位置,但我还在地图上放置了其他标记。最后,它掩盖了我的用户标记。我希望我的用户标记位于地图的顶部。我希望它最后呈现,所以它显示在最顶层。
有什么想法吗?
答案 0 :(得分:1)
我认为这可能会有所帮助:
Mapbox Android SDK: Bring marker to front
是的。从Mapbox Android SDK v4.1开始,所选标记将 来到前面。
您可以使用
选择一个标记mapboxMap.selectMarker(marker);
答案 1 :(得分:1)
万一有人为最新的SDK寻找新的答案。
Mapbox Marker类现已在Mapbox Android SDK的较新版本中弃用。建议使用Annotations插件,该插件具有用于标记的Symbol类。
在 mapbox-android-plugin-annotation-v7 库中,Symbol类具有withZIndex()
方法,该方法可以操纵地图对象的Z顺序。
在 mapbox-android-plugin-annotation-v8 中,此方法重命名为withSymbolSortKey()
(查找和发现有点棘手)。
答案 2 :(得分:0)
这里有一个解决方案https://github.com/mapbox/mapbox-gl-native/pull/5294
如果您使用MarkerView
,则可以通过MarkerViewManager#select
电话将标记置于最顶端。
mapboxMap.getMarkerViewManager().select(marker);
通过从Android View API调用View#bringToFront
结束,所选标记视图将显示在所有其他标记视图之上。