繁体   English   中英

如何在运行时在mapbox中添加带有不同图像的标记?

[英]How to add marker with different images in mapbox at runtime?

我有一个问题,我想在运行时在标记上添加不同的图像。

我基本上可以添加风格的图像,然后我必须加载地图以添加具有不同图像的标记。

这就是我现在在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应该能够在不同的标记上显示图像或在运行时呈现它。

例如,立即使用它进行快照聊天

如果您想使用旧的Marker API,只需通过mapView.addMarkers()添加标记mapView.addMarkers() 您可以使用MarkerOptions()MarkerViewOptions()在运行时自定义它们。 更多关于标记的信息

另一方面,您可以使用SymbolLayer提供自定义标记,从而为样式(和性能)提供更多自定义和自定义逻辑。 我建议读这个

第三种选择是使用新的Annotation插件,这与使用Layers直接相似,但更方便,更少需要编写样板代码。 这里Github回购中的一些例子。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM