当我使用let viewRegion = MKCoordinateRegionMakeWithDistance((userLocation?.coordinate)!, 600,600)很好时,但是显然Swift现在已经用
代替了let viewRegion = MKCoordinateRegion(center:(userLocation?.coordinate)!,纬度米:600,纵向米:600)
我的位置不再显示在地图上,该地图显示了正确的区域。这是我的代码。
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
let locValue:CLLocationCoordinate2D = manager.location!.coordinate
print("locations = \(locValue.latitude) \(locValue.longitude)")
let userLocation = locations.last
let viewRegion = MKCoordinateRegion(center: (userLocation?.coordinate)!, latitudinalMeters: 600, longitudinalMeters: 600)
self.map.setRegion(viewRegion, animated: true)
}
答案 0 :(得分:0)
首先希望您不要忘记将视图控制器从CLLocationManagerDelegate
和MKMapViewDelegate
扩展。
您可以通过调用
从locationManager
变量private let locationManager: CLLocationManager = CLLocationManager()
的任何位置直接从类中的任何位置访问用户位置
userLocation = self.locationManager.location
也不要忘记将视图控制器委托给位置管理器和mapview:
locationManager.delegate = self
mapView.delegate = self