There is one trick that can help you here. Instead of using GMSMarker here, put the image pointing to the center through your Google MapView.
You can easily find the coordinates of the center of the map using this:
double latitude = mapView.camera.target.latitude; double longitude = mapView.camera.target.longitude;
Or that
GMSCoordinateBounds *bounds = nil; bounds = [[GMSCoordinateBounds alloc] initWithRegion: visibleRegion]; CLLocationCoordinate2D centre = CLLocationCoordinate2DMake( (bounds.southWest.latitude + bounds.northEast.latitude) / 2, (bounds.southWest.longitude + bounds.northEast.longitude) / 2);
Now you can get the location address using the Google geocoding API.
Here is the link: https://developers.google.com/maps/documentation/ios-sdk/reference/interface_g_m_s_geocoder
You can update the address when this delegate method is called:
- (void) mapView:(GMSMapView *)mapView idleAtCameraPosition:(GMSCameraPosition *)position
Hope this helps.
source share