Мое местоположение не отображается на карте в MapKit - PullRequest
0 голосов
/ 10 февраля 2019

Когда я использовал let viewRegion = MKCoordinateRegionMakeWithDistance ((userLocation? .Coordinate) !, 600, 600), это было нормально, однако, очевидно, Swift теперь заменил это на

let viewRegion = MKCoordinateRegion (center: (userLocation? .coordinate) !, latitudeMeters: 600, longitudeMeters: 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)


}

1 Ответ

0 голосов
/ 10 февраля 2019

первая надежда, что вы не забыли расширить ваш viewcontroller с CLLocationManagerDelegate и MKMapViewDelegate.
Вы можете получить доступ к расположению пользователя непосредственно из locationManager переменной private let locationManager: CLLocationManager = CLLocationManager() из любой точки вашего класса, позвонив по номеру
userLocation = self.locationManager.location

, также не забудьте передать свой контроллер представления диспетчеру местоположений икарта:

locationManager.delegate = self
        mapView.delegate = self
...