在google_maps_flutter中获取相机的当前位置时出现问题



我是Flutter的新手,遇到了谷歌地图插件的问题。我看了几个教程来获得相机的当前位置,其中大多数都使用GoogleMapController.cacameraPosition.target。我认为他们从控制器中删除了这个方法(因为它仍处于开发阶段(。有没有其他方法可以获得相机的当前位置?

如果您使用的是google_maps_flutter包:

GoogleMap小部件具有onCameraMove功能,可在拖动地图或移动相机时返回CameraPosition

为此,您需要创建一个名为_getCameraPosition(CameraPosition cameraPosition的回调函数,该函数将在调用onCameraMove时调用。例如:

void _getCameraPosition(CameraPosition cameraPosition) {
// You can do whatever you want with cameraPosition here
log("cameraPosition: " + cameraPosition.target.toString());
}

然后,您需要将_getCameraPosition函数放在GoogleMap小部件上的onCameraMove字段中,如下所示:

GoogleMap(
onCameraMove: _getCameraPosition,    // pass it here
onMapCreated: _onMapCreated,
initialCameraPosition: CameraPosition(
target: LatLng(-33.86882, 151.209296),
zoom: 12,
),
),

因此,您将在调试控制台中获得一个LatLng值。例如:

cameraPosition: LatLng(-33.8940124943736, 151.2027569487691)

最新更新