Благодаря новым API SwiftUI 2.0 теперь мы можем представить карту изначально с помощью метода Map (). Давайте посмотрим, как представить его с некоторыми аннотациями.

Сложность: Начинающий | Легко | Нормальный | Испытывающий

Среда: Xcode 12 и SwiftUI

Создать новый проект Xcode

Откройте Xcode и создайте новый проект, выберите приложение в качестве шаблона, интерфейс SwiftUI и назовите наш проект MapLocation.

Давайте создадим нашу карту

Новые API SwiftUI 2.0 позволяют очень легко интегрировать карту в наш проект, достаточно импортировать фреймворк и вызвать метод Map ().

Импортируйте фреймворк MapKit в верхнюю часть файла ContentView.Swift:

Кроме того, добавьте этот параметр региона перед переменной body, но после struct:

Мы использовали координаты Парижа. Теперь вам нужно вызвать эту координату внутри метода карты. Скопируйте / вставьте следующий код в body:

Теперь запустите приложение, карта появится в полноэкранном режиме и укажет вам местонахождение Парижа!

Следующий шаг: добавьте аннотации

Создайте новый файл Swift и назовите его annotation:

Скопируйте / вставьте следующий код в только что созданный файл annotation.Swift:

Мы собираемся использовать этот файл для отображения нашей аннотации, мы создали struct нашей аннотации с идентификатором, заголовком и двумерными координатами. Затем мы добавляем несколько местоположений: Эйфелева башня, Сакре-Кер и Триумфальная арка с соответствующими координатами.

Давайте покажем наши аннотации

Вернитесь к своему файлу ContentView.Swift и подключитесь к annotation.Swift с помощью следующей строки кода:

Теперь вам просто нужно заменить текущий метод Map на следующий, который содержит метод аннотации внутри круглых скобок:

Запустите ваше приложение

Теперь вы можете запустить приложение, и на карте отобразятся 3 булавки: Эйфелева башня, Сакре-Кер и Триумфальная арка.

Бонус

Если вы предпочитаете иметь аннотацию в форме шара, а не булавки на карте, достаточно заменить MapPin на MapMarker внутри Map () метод.

Заключение:

Спасибо за внимание! В нескольких строках кода мы добавили карту с использованием SwiftUI 2.0. Было действительно просто настроить его и добавить несколько аннотаций. Следующий шаг: попробуйте интегрировать базовое местоположение, чтобы найти пользователя в режиме реального времени. Если у вас есть какие-либо вопросы, оставьте мне комментарий, и, если вы сочтете его полезным, поделитесь им с тем, кому он также может быть интересен!

Я всегда рад поболтать и поработать на [email protected]. Рассмотрите возможность подписки, чтобы получить неограниченный доступ к моим статьям и всему Medium через мою реферальную ссылку.

Полный код прямо здесь: