iphone - 在 MkMapView 上隐藏、显示注释

标签 iphone objective-c cocoa cocoa-touch iphone-sdk-3.0

缩小 map View 时如何隐藏注释。我有大量注释,我必须隐藏它们,因为如果 map 上显示的区域太大,您只能看到注释。

最佳答案

为此,您必须检查您所在区域的大小,并根据它设置 View 是否隐藏。

我测试了下面的代码,但您可能需要进行一些调整。


- (void)mapView:(MKMapView *)mapView regionDidChangeAnimated:(BOOL)animated
{
    NSArray *annotations = [_mapView annotations];  
    MyAnnotation *annotation = nil; 
    for (int i=0; i<[annotations count]; i++)
    {
        annotation = (MyAnnotation*)[annotations objectAtIndex:i];
        if (_mapView.region.span.latitudeDelta > .010)
        {
            [[_mapView viewForAnnotation:annotation] setHidden:YES];
        }
        else {
            [[_mapView viewForAnnotation:annotation] setHidden:NO];
        }
    }
}

关于iphone - 在 MkMapView 上隐藏、显示注释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2100483/

相关文章:

ios - 有没有办法为 UICollectionView 中的特定部分应用自定义流布局?

java - Java 和 Objective C 的 LateX 渲染

objective-c - 方法: multiple parameters or structure?

objective-c - tvOS - UIButton 在聚焦时不动画

cocoa 抽吸噪音

ios - 为什么 Apple 使用特殊的 COREDATA_EXTERN 限定符而不只是 extern?

objective-c - Parsekit 还是自己解析?

objective-c - drawRect 不刷新屏幕

iphone - 在 iOS 7 中为 UITableViewCell 使用背景 View 覆盖默认删除按钮

ios - 如何从 View Controller 访问 AppDelegate 中声明的导航 Controller ?