我正在用flutter创建一个应用程序,使用这个包。https:/github.comflutterpluginstreemasterpackagesgoogle_maps_flutter。
我从我的服务器上获得了一个位置列表,我必须在地图上放置标记。我面临的问题是,所有放置在地图上的标记必须在地图上可见。地点列表是随机的,所以我不能假设它们是否都在一个城市,或者它们是否会分布在整个星球上。我如何实现让所有标记都在视野中?
试试下面的代码。它是工作与数百个标记。
// Set<Marker> _markers = Set();
@override
Widget build(BuildContext context) {
return GoogleMap(
mapType: MapType.hybrid,
myLocationEnabled: true,
initialCameraPosition: CameraPosition(
target: LatLng(_bloc.location.latitude, _bloc.location.longitude),
zoom: 3),
markers: _markers,
onMapCreated: (GoogleMapController controller) {
_controller.complete(controller);
Future.delayed(
Duration(milliseconds: 200),
() => controller.animateCamera(CameraUpdate.newLatLngBounds(
MapUtils.boundsFromLatLngList(
_markers.map((loc) => loc.position).toList()),
1)));
},
);
}