如何动态设置缩放级别以在 Flutter 应用程序屏幕中的 Google 地图上显示两个标记而不滚动?

问题描述 投票:0回答:1

我正在开发一个使用 Google 地图的 Flutter 应用程序。在我的应用程序中,我有两个标记:一个代表用户的位置,另一个代表宠物的位置。我想设置地图的缩放级别,以便两个标记同时在屏幕上可见。如何计算适当的缩放级别来实现此目的?

我有用户和宠物的纬度和经度坐标。目前,我正在设置初始相机位置,如下所示:

GoogleMap(
  initialCameraPosition: CameraPosition(
    target: LatLng(userLatitude, userLongitude),
    zoom: 15.0, // Placeholder zoom level
  ),
  markers: _markers, // Set of markers containing user and pet markers
  // Other map configurations...
)

但是,这种方法可能并不总是确保两个标记都可见,特别是当它们相距很远或很近时。

我正在寻找一种解决方案,根据两个标记之间的距离动态计算缩放级别,确保两个标记在屏幕上可见,而不需要用户滚动。

有人可以提供有关如何使用 Google 地图插件在 Flutter 中实现此目的的指导吗?

谢谢您的协助

flutter geolocation google-maps-markers zoom-sdk google-maps-flutter
1个回答
0
投票

请参考我的源代码,我在其中集成了谷歌地图来查找用户的实时位置。我希望你能在那里找到答案。

https://github.com/basitali1509/flutter_google_map_user_live_tracker/blob/master/lib/home_screen.dart

© www.soinside.com 2019 - 2024. All rights reserved.