Umid Targuliyev
Umid Targuliyev

Reputation: 33

Issue with getting current position of camera in google_maps_flutter

I'm a novice in Flutter, and I encountered an issue with google maps plugin. I watched a couple of tutorials in order to get the current position of the camera and Most of them was using GoogleMapController.cameraPosition.target. I think they deleted this method from the controller(Since it is still on the development stage). Is there any other way of getting the current position of the camera?

Upvotes: 1

Views: 566

Answers (1)

jabamataro
jabamataro

Reputation: 1232

If you are using the google_maps_flutter package:

The GoogleMap widget have the onCameraMove function that returns the CameraPosition while dragging the map or moving the camera.

To do this, you'll need to create a callback function called _getCameraPosition(CameraPosition cameraPosition which will be invoked when onCameraMove is called. For example:

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

Then, you'll need to put the _getCameraPosition function to the onCameraMove field on GoogleMap widget, like this:

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

As a result, you will get a LatLng value in the debug console. For example:

cameraPosition: LatLng(-33.8940124943736, 151.2027569487691)

Upvotes: 2

Related Questions