MKAnnotation: чтение тега для MKAnnotation - PullRequest
2 голосов
/ 10 сентября 2010

Когда я добавляю аннотацию, я добавляю к ней «.tag». Однако я никогда не могу прочитать тег в следующем методе.

`- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>) annotation` 

    MKAnnotationView *annView = [[MKAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"MyPin"];
    annView.canShowCallout = YES;

    NSLog(@"annView.tag = %d", annView.tag);

    return annView;
}

NSLog всегда равен 0. Может кто-нибудь пролить свет на это?

Стоит отметить, что если я аннотирую NSLog, я вижу тег.

2010-09-10 10:21:27.612 [1328:207] annotation = <BarPin: 0xdbfa5b0; frame = (0 0; 0 0); tag = 99; layer = <CALayer: 0xdbfa680>>

1 Ответ

1 голос
/ 10 сентября 2010

Вероятно, вы устанавливаете свойство тега для аннотации и пытаетесь прочитать его обратно в представлении аннотации.

Кроме того, похоже, что ваш фрагмент кода протекает annView;вы можете захотеть сделать это автоматически.

...