这对我来说效果更好:
在以下位置设置注释视图层的 zPosition (annotationView.layer.zPosition):
- (MKAnnotationView *)mapView:(MKMapView *)theMapView viewForAnnotation:(id <MKAnnotation>)annotation
{
// if it's the user location, just return nil.
if ([annotation isKindOfClass:[MKUserLocation class]])
return nil;
MKAnnotationView *returnedAnnotationView = nil;
returnedAnnotationView = [CUSTOMVIEW createViewAnnotationForMapView:self.mapView annotation:annotation];
// SOME CUSTOM PROCESSING...
returnedAnnotationView.layer.zPosition = 3;
return returnedAnnotationView;
}
请注意,我假设默认 zPosition 为 0。设置为 3 会使所有 3 个标记都显示在我的顶部。