regiondidchange多次调用应用程序加载swift
问题描述:
我有一个地图,当我平移或输入一个位置并导航到它时,我想要一个简单的打印功能运行。然而,我有这个成就,当我第一次加载应用程序它调用该打印功能几次,直到它完成放大。有没有办法不计算初始应用程序加载区域更改?regiondidchange多次调用应用程序加载swift
答
答案终于找到herehttp://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
}
}
香港专业教育学院试图FUNC mapViewDidFinishLoadingMap(MapView类:的MKMapView){ FUNC MapView类(MapView类:的MKMapView,regionDidChangeAnimated动画:BOOL){ 流浪汉() }} – RubberDucky4444
这FUNC mapViewDidFinishRenderingMap(MapView类:的MKMapView,fullyRendered:BOOL){ FUNC MapView类(MapView类:的MKMapView,regionDidChangeAnimated动画:BOOL){ 流浪汉() }} – RubberDucky4444