Отображение местоположения пользователя

В предыдущей статье этой серии из трех частей мы узнали, как отображать карту и добавлять в представление аннотации для интересующих областей. В этой статье, второй части серии, мы узнаем, как получить от пользователя разрешение на использование его местоположения и отобразить его на карте.

Если вы еще не читали первую часть этой серии, вы можете получить к ней доступ здесь:



Метод, который мы будем использовать для отображения местоположения пользователя на карте, довольно прост, но имеет один небольшой недостаток: он автоматически центрирует карту по местоположению пользователя, когда пользователь перемещается от центра. На данный момент это не проблема, поскольку мы хотим только получить от пользователя разрешение на определение местоположения и отобразить его на карте.

Отображение местоположения пользователя

После создания карты, как мы это делали в первой части видео, добавить местоположение пользователя не составляет труда. Сначала нам нужно включить необходимый импорт, затем запросить у пользователя разрешение на определение местоположения и, наконец, изменить вид карты.

Во-первых, давайте добавим импорт, который позволит нам запрашивать местоположение у пользователя и использовать его в нашем коде.

import CoreLocation

Далее нам нужно получить разрешение пользователя на использование его местоположения. Это делается путем добавления запроса в Info.plist. В новых версиях Xcode Info.plist по умолчанию не отображается в навигаторе проекта. Вместо этого щелкните имя проекта в навигаторе проекта, а затем нажмите «Информация».

После этого добавьте ключ Privacy — Location When in Use Usage Description и значение со строкой, которую пользователь увидит, когда мы запрашиваем доступ к службам определения местоположения.

После этого вернитесь к файлу Swift, в котором вы создаете представление карты, и создайте экземпляр CLLocationManager().