我是CoreLocation和MapKit的新手,我遇到了这个奇怪的问题。基本上,我在UIView中显示了一个MKMapView。当我这样设置我的MKMapView时:
self.mapView.showsUserLocation = YES;
//self.mapView.delegate = self;我得到了这个(1):

但是当我取消对第二行的注释时,我得到了这个(2),我觉得这很奇怪。

如何将MKMapView的委托设置为self,但仍获得(1)
谢谢
发布于 2012-04-30 03:48:34
您是否覆盖了控制器中的注释(viewForAnnotation方法)?在我看来,当您将委托设置为self时,注释将被覆盖。
如果您确实更改了类中的注释,则添加以下行。这将防止更改“当前位置”点的注释。
- (MKAnnotationView *)mapView:(MKMapView *)map viewForAnnotation:(id <MKAnnotation>)annotation
{
static NSString *AnnotationViewID = @"annotationViewID";
// Check if its the annotation for displaying the current position
if ([annotation isKindOfClass:[MKUserLocation class]])
{
return nil;
}
// Your annotation code
}https://stackoverflow.com/questions/10375336
复制相似问题