我有一个问题,我想在运行时在标记上添加不同的图像。
我基本上可以添加样式的图像,然后必须加载地图以添加带有其他图像的标记。
这就是我现在在mapbox中添加图像的方式
mapView.getMapAsync {
it.setStyle(Style.Builder().fromUrl("mapbox://styles/{user}/{mapid}")) { style ->
// Add the marker image to map
ContextCompat.getDrawable(this, R.drawable.ic_user_one_round)?.let { img ->
style.addImageAsync("key", img)
}
}
Mapbox应该能够在运行时在其他标记上显示图像或渲染图像。
例如,立即使用聊天。
答案 0 :(得分:0)
如果您想使用较旧的Marker API,只需通过mapView.addMarkers()
添加标记。您可以在运行时使用MarkerOptions()
或MarkerViewOptions()
自定义它们。有关标记here的更多信息。
另一方面,您可以使用 SymbolLayer 提供您的自定义标记,从而为样式(和性能)提供更多的自定义和自定义逻辑。我建议阅读this。
第三个选择是使用新的注释插件,这与直接使用 Layers 相似,但是更加方便,而且无需编写样板代码。一些示例here和in the Github repo。