Нет одного местоположения, вы получаете серию местоположений из CL, одно из которых кэшируется, а затем другие, меняются по точности с течением времени, улучшая (или ухудшая) точность, занимая от 1 секунды до 10 минут.
CL начнет с того, что даст вам кэшированное местоположение, которое может быть достаточно для ваших целей.Если он не слишком старый (<60 секунд) и имеет разумную точность, продолжайте и используйте кэшированное местоположение, это будет быстрый результат.В противном случае вам придется ждать достаточно хорошей точности (вам нужно решить, что достаточно, посмотрите на <code>.horizontalAccuracy).
Если вы настаиваете на наличии местоположения до вызова viewDidLoad (лучше будет использовать viewWillAppear)) затем вы должны отложить нажатие этого viewController, пока у вас не будет достаточно места.Как вы это сделаете, зависит от того, как загружается этот контроллер представления.