8

I have placed 6 custom markers with the same coordinates in google maps iOS SDK. Those markers are continuously blinking/Toggling. I don't want blinking animation at all. Please help me.

Here is my Source Code.

-(void)loadPlacesInMapWithIndex:(int)index{

    for (int i = 0; i < [[[SearchManager sharedInstance]searchedStallArray] count]; i++) {
        Stall *stall = [[[SearchManager sharedInstance]searchedStallArray] objectAtIndex:i];

        // Creates a marker in the center of the map.
        GMSMarker *marker = [[GMSMarker alloc] init];
        marker.position = CLLocationCoordinate2DMake([stall.stallLatitude doubleValue],[stall.stallLongitude doubleValue]);
        marker.infoWindowAnchor = CGPointMake(0.44f, -0.07f);
        marker.userData = stall;
        marker.tappable = YES;
        self.infoView = [[[NSBundle mainBundle]loadNibNamed:@"StallInfoWindow" owner:self options:nil] objectAtIndex:0];

        marker.iconView = self.infoView;
        if (index == i) {
            [self.infoView.stallPinImageView setImage:[UIImage imageNamed:@"RateLabel.png"]];
            [self.infoView.stallPriceLabel setTextColor:[UIColor whiteColor]];

            CGFloat currentZoom = self.stallsMapView.camera.zoom;
            [CATransaction begin];
            [CATransaction setValue:[NSNumber numberWithFloat: 0.5f] forKey:kCATransactionAnimationDuration];
            [self.stallsMapView animateToCameraPosition:[GMSCameraPosition
                                                          cameraWithLatitude:[stall.stallLatitude doubleValue]
                                                          longitude:[stall.stallLongitude doubleValue]
                                                          zoom:currentZoom]];
            [CATransaction setCompletionBlock:^{
            }];
            [CATransaction commit];

        }else{
            [self.infoView.stallPinImageView setImage:[UIImage imageNamed:@"horse.png"]];
            [self.infoView.stallPriceLabel setTextColor:[UIColor redColor]];
        }

        self.infoView.stallPriceLabel.text = [NSString stringWithFormat:@"$%@",stall.stallPrice];

        marker.map = self.stallsMapView;
    }
}
Ketan P
  • 4,259
  • 3
  • 30
  • 36
Raghu Bujji
  • 81
  • 1
  • 6

2 Answers2

15

You have to provide them diffrent zIndex property. This property defines which marker is on the top of stack. The highest numbers are on top.

For your code, insert under:

 marker.tappable = YES;

this line of code:

 marker.zIndex = (UInt32)i
B2D
  • 161
  • 1
  • 4
0

Have you tried to setup the zIndex property of the markers? Probably the markers blink because they're overlapping an there is no clear draw ordering.

lucianoenrico
  • 1,486
  • 1
  • 13
  • 21