Благодаря новым 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 через мою реферальную ссылку.
Полный код прямо здесь: