У меня есть широта и долгота, которые я хочу открыть в своем картографическом приложении. Я пробовал этот код ЗДЕСЬ .
func goToMap(){
var lat1 : NSString = self.venueLat
var lng1 : NSString = self.venueLng
var latitude:CLLocationDegrees = lat1.doubleValue
var longitude:CLLocationDegrees = lng1.doubleValue
var coordinate = CLLocationCoordinate2DMake(latitude, longitude)
var placemark : MKPlacemark = MKPlacemark(coordinate: coordinate, addressDictionary:nil)
var mapItem:MKMapItem = MKMapItem(placemark: placemark)
mapItem.name = "Target location"
let launchOptions:NSDictionary = NSDictionary(object: MKLaunchOptionsDirectionsModeDriving, forKey: MKLaunchOptionsDirectionsModeKey)
var currentLocationMapItem:MKMapItem = MKMapItem.mapItemForCurrentLocation()
MKMapItem.openMapsWithItems([currentLocationMapItem, mapItem], launchOptions: launchOptions)
}
Эта функция успешно открывает карты, но не показывает никаких контактов. Также он показывает местоположение пользователя, которого я не хочу. Мне нужна только отметка на карте с указанием широты и долготы.
ios
swift
apple-maps
Дхармеш Хени
источник
источник
Ответы:
Этот код у меня работает нормально.
Для Swift 3.0:
источник
MKLaunchOptionsMapSpanKey
игнорируется, когда один или несколькоMKMapItem
добавляются на карту: stackoverflow.com/a/32484331/422288Если вы просто хотите указать пользователю направление движения, вот последний синтаксис Swift в его простейшей форме:
источник
mapItem.openInMapsWithLaunchOptions([MKLaunchOptionsDirectionsModeKey: MKLaunchOptionsDirectionsModeDriving])
Вы можете вызвать функцию класса для
MKMapItem
передачи элементов туда, она использует только первый и последний для источника / назначения соответственно, если вы хотите передать более двух элементов.Свифт 5, 4
или используя расширение:
источник
Приведенный
MKMapItem
выше подход отлично работает, если вы хотите детально контролировать информацию, отображаемую в Картах.В противном случае приведенный ниже код также отлично работает:
Однако приведенный выше код не позволяет отправить произвольное название места. Вместо этого будет показан адрес.
Приведенный выше код также позволяет вам перемещаться из любой исходной координаты, что я не знаю, можете ли вы сделать это с подходом MKMapItem.
источник
Для меня это действует как оберег
источник
Вы можете использовать приведенный ниже код, чтобы показать PIN-код на широте и долготе на карте Apple.
источник
Если вам нужно что-то простое, без импорта какой-либо структуры, вы можете просто создать URL-адрес:
https://maps.apple.com/?ll=\(latitude),\(longitude)
Аналогичен ответу @ saniel-saidi, но он открывает только карту с отправленным местоположением, а не навигацию
источник
Я знаю, что все ответы полны, но здесь я получил ответ, который легче скопировать и вставить, а также предоставляет пользователю параметры маршрутизации с помощью Apple Maps, Google Map и Waze.
Работа со Swift 5+
https://stackoverflow.com/a/60930491/6449292
Может кому-нибудь помочь ...
источник
Обновите практический ответ Дэниела Саиди . Этот пример предназначен только для указания координат пункта назначения. Карты получат в качестве источника текущую позицию пользователя.
источник