加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 禁用MKmapkit mapView userLocation annotationV

发布时间:2020-12-16 05:00:16 所属栏目:百科 来源:网络整理
导读:我有一个带有annotationViews的mapView和userLocation蓝点. 我使用以下代码获取蓝点: [self.mapView setShowsUserLocation:YES]; annotationViews是可选择的并具有标注. 但是,如果annotationView靠近用户的位置,有时蓝点会窃取触摸. 我可以设置annotationVi
我有一个带有annotationViews的mapView和userLocation蓝点.

我使用以下代码获取蓝点:

[self.mapView setShowsUserLocation:YES];

annotationViews是可选择的并具有标注.

但是,如果annotationView靠近用户的位置,有时蓝点会窃取触摸.

我可以设置annotationView.enabled = NO;并且它将显示annotationView但它不会通过annotationView从关闭中窃取触摸.

我想将用户位置蓝点annotationView设置为enabled = NO,因此它不会通过annotationViews窃取关闭的触摸.

我可以设置蓝点的标题:

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

但我无法禁用蓝点.

谢谢!

解决方法

您可以通过在didAddAnnotationViews委托方法中获取对它的引用来设置用户位置的MKAnnotationView上的启用(这样您就可以确保视图已准备好):
-(void)mapView:(MKMapView *)mapView didAddAnnotationViews:(NSArray *)views
{
    MKAnnotationView *ulv = [mapView viewForAnnotation:mapView.userLocation];
    ulv.enabled = NO;
}

(userLocation模型对象上没有启用的属性 – 它是视图的属性.)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读