我的应用程序显示了一个用户标记。基本上,用户标记显示当前用户在地图上的位置,但我还在地图上放置了其他标记。最后,它掩盖了我的用户标记。我希望我的用户标记位于地图的顶部。我希望它最后渲染,所以它显示在最顶部。
任何想法?
我的应用程序显示了一个用户标记。基本上,用户标记显示当前用户在地图上的位置,但我还在地图上放置了其他标记。最后,它掩盖了我的用户标记。我希望我的用户标记位于地图的顶部。我希望它最后渲染,所以它显示在最顶部。
任何想法?
如果有人正在寻找最新 SDK 的更新答案。
Mapbox Marker 类现在在 Mapbox Android SDK 的较新版本中已弃用。建议使用Annotations插件,它有一个用于标记的 Symbol 类。
在mapbox-android-plugin-annotation-v7库中,Symbol 类有一个withZIndex()
方法可以操作地图对象的 Z 顺序。
在mapbox-android-plugin-annotation-v8中,此方法被重命名为withSymbolSortKey()
(查找和发现有点棘手)。
我认为这可能会有所帮助:
是的。从 Mapbox Android SDK v4.1 开始,选中的标记会出现在前面。
您可以选择一个标记
mapboxMap.selectMarker(marker);
这里有一个解决方案https://github.com/mapbox/mapbox-gl-native/pull/5294
如果你使用,你可以用callMarkerView
把你的标记带到最上面。MarkerViewManager#select
mapboxMap.getMarkerViewManager().select(marker);
它将通过View#bringToFront
从 Android View API 调用结束,选定的标记视图将显示在所有其他标记视图的顶部。