, - , , . : GMSMarker *selectedMarker BOOL isMarkerActive. mapview:markerInfoWindow , , , , . , bool true, , .
if(self.isMarkerActive == TRUE){
[self unhighlightMarker:self.selectedMarker];
}
self.selectedMarker = marker;
self.isMarkerActive = TRUE;
[self highlightMarker:marker];
highlightMarker ,
-(void)highlightMarker:(GMSMarker *)marker{
if(self.mapView.selectedMarker isEqual:marker]){
marker.icon = [UIImage imageNamed:@"marker-selected-icon"];
}
}
unhighlightMarker
-(void)unhighlightMarker:(GMSMarker* )marker{
marker.icon = [UIImage imageNamed:@"marker-icon"];
}
, , bool nil
- (void)mapView:(GMSMapView *)amapView didTapAtCoordinate:(CLLocationCoordinate2D)coordinate{
if(self.isMarkerActive == TRUE){
if(amapView.selectedMarker != nil){
self.isMarkerActive = FALSE;
[self unhighlightMarker:self.selectedMarker];
self.selectedMarker = nil;
amapView.selectedMarker = nil;
}
}
}
, - .