使用MKMapView我有一堆加载到它的annoatations,我希望能够过滤使用分段控件显示的注释。隐藏地图注释而不删除它们
我使用定制标注有类型的变量,所以我可以从彼此区分它们,但我一直没能找到一种方法来隐藏和显示的注解视图的子集。
使用MKMapView我有一堆加载到它的annoatations,我希望能够过滤使用分段控件显示的注释。隐藏地图注释而不删除它们
我使用定制标注有类型的变量,所以我可以从彼此区分它们,但我一直没能找到一种方法来隐藏和显示的注解视图的子集。
当然,试试这个:
Objective-C的解决方案:
[[yourMapView viewForAnnotation:yourAnnotation] setHidden:YES]
斯威夫特4解决方案:
yourMapView.view(for: yourAnnotation)?.isHidden = true
这将返回与指定相关联的视图注释对象,那么您可以将视图设置为隐藏。这是documentation。
,如果你想隐藏MKAnnotationView(气泡),你可以创建一个自定义的:
- (MKAnnotationView *)mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>)annotation
{
if (annotation==self.map.mapView.userLocation)
return nil;
MKAnnotationView *annotationView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"loc"];
if([annotation isKindOfClass:[AnnotationCustomClass class]]) {
annotationView.canShowCallout = NO; // <- hide the bubble
}
return annotationView;
}
感谢的是,工作一种享受。对不起,不又回到了这个越快。 – Affian 2010-02-11 21:39:26
NP ......很乐意帮忙! – 2010-02-12 04:21:05
过滤时是它更好地隐藏注释或删除呢? – lostintranslation 2014-06-25 23:57:31