Получить indexPath mapView аннотации

Когда аннотация на карте выбрана и нажата кнопка управления аксессуаром выноски, мне нужно найти индекс этой аннотации. Индекс будет использоваться для просмотра информации в массиве для подготовки к следующему контроллеру представления (подробно).

Как мне найти индекс аннотации?

- (void)mapView:(MKMapView *)mapView annotationView:(MKAnnotationView *)view calloutAccessoryControlTapped:(UIControl *)control
{
NSLog(@"Button clicked");
[self performSegueWithIdentifier:@"showDetail" sender:self];
}

Спасибо

2 ответа

Решение

MKAnnotationView * view =...

NSUInteger index = [mapView.annotations indexOfObject: view.annotation];

У него нет пути индекса, как в табличном представлении. Используйте свой собственный класс модели в качестве аннотации, чтобы он соответствовал MKAnnotationзатем используйте любую логику для отслеживания отдельных элементов модели. Или просто передайте элемент модели как есть следующему контроллеру представления.

Другие вопросы по тегам