为什么我的 GeoJsonLayer.boundingBox 等于 null?

Why my GeoJsonLayer.boundingBox is equal to null?

我希望将我的地图以我的 geojsonLayer 为中心。 到目前为止我有:

GeoJsonLayer layer = new GeoJsonLayer(mymap,geojson);
layer.affLayerToMap();
LatLngBounds bounds = layer.getBoundingBox();
mymap.moveCamera(CameraUpdateFactory.newLatLngBounds(bounds, 0));

但边界为空,即使图层设置为地图

layer.isLayerOnMap // Return true 

根据 getBoundingBox() 方法的 documentation (并通过查看代码),您将看到只有当您的 geojson 中有 FeatureCollection 时 boundingBox 才有值(所以它不适用于简单的多边形或直线)。此外,如果 geojson 中没有 "bbox" 属性,它似乎根本不起作用,我没有在代码中看到任何实际遍历每个坐标并保存边界框的机制.

我建议使用 LatLngBounds.Builder.

自己解析坐标