我在我的项目中使用FBAnnotationClustering。当我以编程方式显示注释视图时,我碰壁了。
例如。 当捕捉到MapView上的一个引脚时,我们想要显示注释。
我已经完成了代码,似乎无法找到它触发“show annotation”类型函数的位置。
mapView selectAnnotation
的简单答案不起作用,因为注释未使用地图设置,"ERROR: You are trying to select an annotation that has yet been added to the map"
出现....
有什么想法吗?
答案 0 :(得分:1)
FBAnnotationClustering的开发人员使用以下答案回复了我在GitHub上的问题。
- (void)mapView:(MKMapView *)mapView didSelectAnnotationView:(MKAnnotationView *)view
{
if ([view.annotation isKindOfClass:[FBAnnotationCluster class]]) {
FBAnnotationCluster *cluster = (FBAnnotationCluster *)view.annotation;
int i = 0;
MKMapPoint points[cluster.annotations.count];
for (id<MKAnnotation> annotation in cluster.annotations){
points[i++] = MKMapPointForCoordinate(annotation.coordinate);
}
MKPolygon *polygon = [MKPolygon polygonWithPoints:points count:i];
MKMapRect newMapRect = [polygon boundingMapRect];
[mapView setVisibleMapRect:newMapRect edgePadding:UIEdgeInsetsMake(50, 50, 50, 50) animated:YES];
}
}
GitHub问题已超过here