是否有方法(或任何方法)可以获取方法内注释的“索引路径”:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id)annotation
我想要做的是根据注释在数组中获取内容。我认为我要复制的方法之一是- tableView:cellForRowAtIndexPath:
并使用“indexPath”。
搜索了很多但没有找到任何结果。或者也许我只是在搜索时很糟糕。任何参考将不胜感激。
答案 0 :(得分:4)
NSUInteger index = [mapView.annotations indexOfObject:annotation];
由于底层数组是可变数组,请注意index
可以更改。这似乎是您可以获得的最接近的indexPath
类似信息。
答案 1 :(得分:-1)
回答我自己的问题(这对我有用):
我在自定义注释中创建了一个实例并将数据传输到那里,然后在- mapView:viewForAnnotation:
内(我使用了自定义pinView)我导入并创建了一个CustomAnnotation实例并从那里获取数据。
[customAnnotation setSomething: data];
- mapView:viewForAnnotation:
{
pinView = [[[CustomPinView alloc] initWithAnnotation: annotation reuseIdentifier: PinIdentifier] autorelease];
}
- initWithAnnotation:reuseIdentifier:
{
CustomAnnotation *customAnnotation = (CustomAnnotation *)annotation;
[customAnnotation something];
}
对我来说太过分了,但它完成了工作。