Я пытаюсь реализовать базовое представление карты и добавить текущее местоположение пользователя к карте в качестве аннотации. Я добавил ключ request.heninuse к моему info.plist и импортировал coreLocation.
На мой взгляд, контроллер действительно загрузил метод, у меня есть следующее:
locManager.requestWhenInUseAuthorization()
var currentLocation : CLLocation
if(CLLocationManager.authorizationStatus() == CLAuthorizationStatus.AuthorizedWhenInUse){
    currentLocation = locManager.location
    println("currentLocation is \(currentLocation)")      
}
else{
    println("not getting location")
    // a default pin
}
Я получаю подсказку re. разрешение на получение местоположения. Поскольку это происходит, я получаю сообщение о том, что не получаю местоположение, очевидно, потому что это выполняется до того, как пользователь получит возможность нажать "ОК". Если я вернусь к приложению и вернусь, я смогу найти место и добавить его на карту. Тем не менее, я хочу, чтобы пользователь впервые нажал OK, чтобы иметь возможность захватить текущее местоположение и добавить его на карту там и тогда. Как я могу это достичь? У меня есть следующий способ добавления булавки:
func addPin(location2D: CLLocationCoordinate2D){
    self.mapView.delegate = self
    var newPoint = MKPointAnnotation()
    newPoint.coordinate = location2D
    self.mapView.addAnnotation(newPoint)
}
