ios - regiondidchange 在 app load swift 上多次调用

标签 ios xcode swift mapkit swift2

我有一张 map ,当我平移或输入一个位置并导航到它时,我希望运行一个简单的打印功能。然而,我已经完成了这个,当我第一次加载应用程序时,它会多次调用该打印函数,直到它完成放大。有没有办法不计算应用程序加载区域变化的初始值?

最佳答案

终于在这里找到答案http://ask.ttwait.com/que/5556977

private var mapChangedFromUserInteraction = false

private func mapViewRegionDidChangeFromUserInteraction() -> Bool {
let view = self.mapView.subviews[0]
//  Look through gesture recognizers to determine whether this region change is from user interaction
if let gestureRecognizers = view.gestureRecognizers {
    for recognizer in gestureRecognizers {
        if( recognizer.state == UIGestureRecognizerState.Began || recognizer.state == UIGestureRecognizerState.Ended ) {
            return true
        }
    }
}
return false
}

func mapView(mapView: MKMapView, regionWillChangeAnimated animated:    
Bool) {
mapChangedFromUserInteraction =   
mapViewRegionDidChangeFromUserInteraction()
if (mapChangedFromUserInteraction) {
    // user changed map region
}
}

func mapView(mapView: MKMapView, regionDidChangeAnimated animated:   
Bool) {
if (mapChangedFromUserInteraction) {
    // user changed map region
}
}

关于ios - regiondidchange 在 app load swift 上多次调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33131213/

相关文章:

ios - 即使采取措施后,UICollectionView 单元格重用也会导致问题

ios - xcode 中特定组的断点

ios - 为什么设置半透明为背景后ViewController中的Label就没有了?

ios - swift (IOS): Saving and Reading Data into/from a file

Swift:通过 NSNotificationCenter 从子 ViewController 返回数据

swift - 标签宽度不根据标签内容增长

iphone - 在Ipad中通过XML解析生成动态控件

ios - UITextFieldDelegate 和整行删除

ios - 选择两首歌曲后如何关闭媒体选择器?

ios - Xcode 7 中的特定 UI 测试