Я добавил наблюдателя на булавку. Есть проблема: иногда я получаю двойной вызов Наблюдать за ValveForKeyPath, когда нажимаю на пин Что мне нужно сделать?
annotationView.enabled = YES;
annotationView.animatesDrop = YES;
annotationView.pinColor = MKPinAnnotationColorRed,
annotationView.canShowCallout = YES;
- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context
{
NSString *action = (NSString*)context;
if([action isEqualToString:@"ANSELECTED"])
{
BOOL annotationAppeared = [[change valueForKey:@"new"] boolValue];
MKAnnotationView *annotationView = (MKAnnotationView *)object;
if ( [annotationView.annotation isKindOfClass:[RestaurantLocation class]] )
{
RestaurantLocation *annot = (RestaurantLocation *)annotationView.annotation;
if (annotationAppeared)
{do something}}
}