我正在尝试更改MapView的初始缩放位置。 如果myLocation == false,我希望initialLocation为(35,35),如果为true,则获取当前Location。但startUpdatingLocation在initialLocation之后完成,所以我无法得到它并且它崩溃了。如果我使用断点,它可以工作并获取值。
if self.myLocation == false {
self.initialLocation = CLLocation(latitude: 35.00, longitude: 35.00) }
else {
locManager.delegate = self
locManager.desiredAccuracy = kCLLocationAccuracyBest
checkLocationAuthorizationStatus()
locManager.startUpdatingLocation()
self.initialLocation = CLLocation(latitude: locManager.location.coordinate.longitude, longitude: locManager.location.coordinate.longitude)
}
centerMapOnLocation(self.initialLocation)
}
答案 0 :(得分:1)
您需要使用locationManager委托:locationManager:didUpdateLocations
来设置位置
将self.initialLocation=
代码放入代理中。
然后创建另一个函数,您可以调用该函数来执行centerMapOnLocation(self.initialLocation)
代码。