问题描述
||
我正在尝试实现以下方法,该方法基本上使用在当前地图矩形中可见的注释填充数组。
- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
{
self.LocationSet = [self.mapView annotationsInMapRect:self.mapView.visibleMapRect];
self.LocationArray = [self.nearbyCarParksSet allObjects];
}
什么是只选择要添加到集合/数组中的特定类别的注释的正确方法?例如,在当前地图视图中,我可能具有属于\“ Restaurant \”类,\“停车场\”类,\“加油站\”类的注释,而我只想存储属于进入“餐厅”类。最好的方法是什么?
解决方法
假设“ 1”具有所有从上述方法中的第一个调用派生的注释。您可以使用获取所有类型的注释,
restaurantSet = [locationSet objectsPassingTest:^(id obj,BOOL *stop){
return [obj isMemberOfClass:[YourAnnotationSubclass class]];
}];