Search code examples
iosobjective-cmarkerinfowindowgoogle-maps-sdk-ios

Close info window of a marker programmatically google maps iOS


I know it's easy in the java version of Google Maps but I can't figure out how to get the info window to close in the objective C version of the SDK.

I'm using this method:

-(void) mapView:(GMSMapView *)mapView
    didTapInfoWindowOfMarker:(id<GMSMarker>)marker {

    sharedGlobal.shouldShowPlayer = YES;

    /* adds the path to the map by decoding google's encoded string */
    [self addPath: sharedGlobal.encodedPathString];
}

And want to add a line to close the infowindow associated with marker.


Solution

  • I think you can use this:

    mapView.selectedMarker = nil;
    

    The comments on the selectedMarker property in GMSMapView.h say this:

    /**
     * The marker that is selected.  Setting this property selects a particular
     * marker, showing an info window on it.  If this property is non-nil, setting
     * it to nil deselects the marker, hiding the info window.  This property is
     * observable using KVO.
     */
    @property (nonatomic, strong) id<GMSMarker> selectedMarker;