Disable MKmapkit mapView userLocation annotationView



我有一个带有annotationViewsuserLocation蓝点的mapView

我正在使用以下代码来获得蓝点:

[self.mapView setShowsUserLocation:YES];

annotationViews是可选的,并且具有标注。

然而,如果annotationView靠近用户的位置,有时蓝点会偷走触摸。

我可以设置annotationView.enabled = NO;,它将显示注释视图,但它不会从annotationView的关闭中窃取触摸。

我想将用户位置蓝点annotationView设置为enabled=NO,这样它就不会窃取annotationViews关闭的触摸。

我可以用设置蓝点的标题

self.mapView.userLocation.title = @"title here..."

但我不能禁用蓝点。

谢谢!

您可以在用户位置的MKAnnotationView上设置enabled,方法是在didAddAnnotationViews委托方法中获取对它的引用(这样您就可以确保视图已准备好):

-(void)mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray *)views
{
MKAnnotationView *ulv = [mapView viewForAnnotation:mapView.userLocation];
ulv.enabled = NO;
}

(userLocation模型对象上没有enabled属性——它是视图的属性。)

相关内容

  • 没有找到相关文章

最新更新