我正在尝试使用Mapbox Android SDK并使用symbolManager作为推荐的here添加多个标记。

我只是创建此函数,该函数负责为每个汽车对象创建一个标记。我没有收到任何错误,但 map 上没有任何显示。

private fun displayCarsLayer(cars: MutableList<Car>) {

        mapView.getMapAsync(OnMapReadyCallback { mapboxMap ->
            for (car in cars) {
                val carLat = car.lat
                val carLng = car.lng
                // Add the marker to the map
                symbolManager.create(
                    SymbolOptions()
                    .withLatLng(LatLng(carLat, carLng))
                );
            }
        })

    }

最佳答案

这可能会有点晚,但这可能与初始化symbolManager的方式有关。当前,您尚未初始化它。

加载 map 和样式后,可以在onMapReady回调中初始化SymbolManager:

val symbolManager = SymbolManager(mapView, mapboxMap, style)

然后,您可以继续执行代码:
symbolManager.create(
                SymbolOptions()
                .withLatLng(LatLng(carLat, carLng))
            )

07-27 15:48